打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
数组与指针,字符串赋值
char   c[6];  
c   = "77777777777 ";(错误)

char   *str;
str   =   "7777777777 ";(正确)


C/C++规定:数组不可以赋值。

数组声明后有一块内存空间,数组名是那块内存的首地址,而且是常量,所以不能赋值,你只能通过strcpy、memcpy之类的直接修改那块内存空间的内容.


指针的话是变量,所以可以指向任意的地址

----------------------------------------------------
对于一个常量字符串的值是该字符串的首个元素的地址

对于
char   c[6];  
c   = "77777777777 ";
c   相当于一个常量指针,他指向的地址是不能改变的,上面的赋值相当于让c指向   "777777... "字符串的首地址,因此是不可以的。

对于
char   *str;
str   =   "7777777777 ";
让str指向 "7777777777 "的首地址,所以可行

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
深入理解C语言
C\C |指针详述及实例分析
深入 char * ,char ** ,char a[ ] ,char *a[] 内核
C语言 字符指针和字符数组的区别
C语言中字符串数组与字符指针数组有什么区别?怎么用?
指向字符串的指针为何不能用来修改此字符串(c语言)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服