选择题

有以下程序(其中的 strstr()函数头部格式为: char* strstr(char* p1,char* p2)确定 p2 字符串是否在 p1 中出现, 并返回 p2 第一次出现的字符串首地址):

#include
#include
char *a="you";
char *b="Welcome you to Beijing!";
main()
{
   char *p;
   p=strstr(b,a)+strlen(a)+1;
   printf("%s\n",p);
}

程序的运行结果是(     )。

【正确答案】 A
【答案解析】

调用 strstr 函数, 返回值为 a 指向的字符串在 b 指向的字符串中第一次出现的位置, 并将此地址赋给指针 p。 strlen()函数求字符串的实际长度(不包含结束标志)。 strstr 函数返回的地址下标值为 8, 加上 a 长度 3,再加 1, 指针 P 指向的地址下标值为 12, 输出: to Beijing!, 答案选择 A 选项。