以下程序运行后,输出结果是( )。 main( ) {char*S=“abcde”: s+=2: printf(“%ld\n”,s); }

admin2014-10-20  35

问题 以下程序运行后,输出结果是(    )。
main(    )
{char*S=“abcde”:
  s+=2:
  printf(“%ld\n”,s);
}

选项 A、cde
B、字符c的ASCⅡ码值
C、字符C的地址
D、出错

答案C

解析 char*s=“abcde”,声明s是一个字符串指针,并且将字符数组“abcde”的首地址赋值给了s,s+=2,即是在原来的s地址上向前推进两个字节,又因为数组是在连续空间上存储的一组数据,且一个字符占一个字节,那么也就等价于由数组的第一个字节地址推进到第三个字符的地址,即字符c的地址。答案为C。
转载请注明原文地址:https://kaotiyun.com/show/FwvR777K
0

最新回复(0)