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

admin2015-07-28  24

问题 有以下程序(其中的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、to Beijing!
B、you to Beijing!
C、Welcome you to Beijing!
D、Beijing!

答案A

解析 表达式"strstr(b, a);"返回的是字符串"you"在b指向的字符串中第一次出现的字符串首地址,即是&b[8],strlen(a)求得为字符串a的实际长度为3,所以语句"p = strstr(b, a) + strlen(a) + 1;"计算得的p与&b[12]等价,所以答案选A。
转载请注明原文地址:https://kaotiyun.com/show/azDp777K
0

最新回复(0)