C语言指针数组的问题
在书上看到这样一句话char*p[]={"love","china","you","welcome"};是将几个字符串赋值给一个指针数组中的指针变量,请问这样写可以吗,指...
在书上看到这样一句话
char *p[]={"love", "china", "you", "welcome"};
是将几个字符串赋值给一个指针数组中的指针变量,请问这样写可以吗,指针数组里面的元素都是指针变量,内容存放的是地址型数据,能把字符串直接赋值给指针变量吗? 展开
char *p[]={"love", "china", "you", "welcome"};
是将几个字符串赋值给一个指针数组中的指针变量,请问这样写可以吗,指针数组里面的元素都是指针变量,内容存放的是地址型数据,能把字符串直接赋值给指针变量吗? 展开
4个回答
展开全部
putin高数里面的array数组是局部变量,内存是临时分配的,函数调用完了,内存就被释放掉,其中保存的数据也会改变,也就是说,指针p虽然依然能指到那个地址,但内容已经不是你输入的那些了。你可以将主函数里定义的all数组通过参数传递但putin函数中,然后输入数据。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
字符串字面值常量就是指向其首地址的常量指针。
对于"foobar"这个字符串,它的值就是指向首字母f的地址的常量指针。
注意是常量指针,也就是const char*类型,字符串字面值常量是不可以修改的。
所以题中的规范写法应该是const char *p[]={"love", "china", "you", "welcome"};
对于"foobar"这个字符串,它的值就是指向首字母f的地址的常量指针。
注意是常量指针,也就是const char*类型,字符串字面值常量是不可以修改的。
所以题中的规范写法应该是const char *p[]={"love", "china", "you", "welcome"};
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
第一点,两个按照顺序存储,所以吨输出后输出米,车,长
第二点,sizeof(arrayquantityUnit)这句话的结果是4,因为指针是4个字节
第二点,sizeof(arrayquantityUnit)这句话的结果是4,因为指针是4个字节
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
P是指针,指针加法就是指针在内存中的移动,因此P+1就是使P指向下一个位置;0是下标号,亦即首元素;[]是数组取元素值的一种方法,运算的结果是其中下标位置的值,与*类似,例如此处的*(P+1)等价于P[1],亦即a[1],因此输出的值即a[1][0],就...
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询