1.说明“double(*ptr)[N];”中的标识符ptr是一个指向由N个double类型元素组成的一维数组和指针
2.定义语句"double * array [8]"的含义正确的是array是一个数组,数组的每一个元素是指向双精度实型数据的指针
3.下面程序段的输出结果是出错
char *p1 = ”123”, *p2 = ”ABC”, str[50] = “xyz”;
strcpy(str + 2, strcat(p1, p2));
printf(“%s\n”, str);
解:p1和p2都指向常量字符串,在常量区,所以不能对其进行操作
本文深入探讨了C语言中指针的高级用法,包括如何理解复杂指针声明,如'double(*ptr)[N]'和'double*array[8]'。同时,文章分析了一段涉及字符串操作的代码,解释了为何直接对指向常量字符串的指针进行修改会导致编译错误。
16万+

被折叠的 条评论
为什么被折叠?



