C语言的学习问题 40

来源:百度知道 编辑:UC知道 时间:2024/06/24 08:11:06
小弟希望高手帮忙
谢谢
讲得细一点啊
谢谢了

main()
{ char str[][10]={"China","Beijing"},*p=str;
printf("%s\n",p+10);
}

输出:Beijing
str是二维数组str[2][10]。
它在内存中是这样存储的:'C' 'h' 'i' 'n' 'a' '\0' '\0' '\0' '\0' '\0' 'B' 'e' 'i' 'j' 'i' 'n' 'g' '\0' '\0' '\0'
指针p=str,p所指向的地址存储的变量是'C',p+10向后移10个字节,此时指向B,而需要输出的是字符串,所以是Beijing