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

admin2022-04-01  21

问题 有以下程序
 #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

解析 题意定义一个二维字符数组str,它包含3个字符串,每个字符串存放在一个长度为10的一维数组中。指针变量p指向strp[0],即第一个字符串“One”,由于“One”存放在长度为10的一维数组,所以p+10指向下一个字符串“three”,长度为5,所以本题答案为c。
转载请注明原文地址:https://kaotiyun.com/show/yBkp777K
0

最新回复(0)