char str[]= "abc\0def\0ghi", *p = str; printf("%s", p+5) ;
时间: 2024-05-21 07:17:25 浏览: 145
C语言中二维数组作为函数参数来传递的三种方法
这段代码的输出结果是 "def"。
首先,char数组str中包含了三个字符串:abc、def和ghi,每个字符串以空字符 '\0' 结尾。所以,实际上str数组内存储的内容是 "abc\0def\0ghi\0"。
然后,指针变量p被初始化为str数组的首地址,也就是指向字符串 "abc" 的第一个字符 'a'。
最后,p+5表示将指针p向后移动5个字节,即指向字符串 "def" 的第一个字符 'd'。因此,printf函数输出的结果就是 "def"。
阅读全文