有以下程序  #include<stdio.h>  #include<string.h>  main()  { char str[][10]={"One","Three","Five"},*p=str[0];   printf("%s,",p+10)

admin2022-10-24  26

问题 有以下程序
 #include<stdio.h>
 #include<string.h>
 main()
 {  char str[][10]={"One","Three","Five"},*p=str[0];
    printf("%s,",p+10);
    printf("%d\n",strlen(p+=10));
 }
 执行后的输出结果是(          )。

选项 A、Three,4
B、出错
C、Three,5
D、Five,5

答案C

解析 main函数定义一个二维字符数组str,它包含3个字符串,每个字符串存放在一个长度为10的一维数组中。指针变量p指向str[0],即第1个字符串“One”。由于“One”存放在长度为10的一维数组中,因此p+10指向下一个字符串“Three”,长度为5。故本题答案为C选项。
转载请注明原文地址:https://kaotiyun.com/show/4Hkp777K
0

最新回复(0)