永发信息网

求助,有关C++char型的赋值问题

答案:1  悬赏:10  手机版
解决时间 2021-04-13 00:00
求助,有关C++char型的赋值问题
最佳答案
定义一个数组char a[10];
怎么给这个数组赋值呢?
1、定义的时候直接用字符串赋值
char a[10]="hello";
注意:不能先定义再给它赋值,如char a[10]; a[10]="hello";这样是错误的!
2、对数组中字符逐个赋值
char a[10]={'h','e','l','l','o'};
3、利用strcpy
char a[10]; strcpy(a, "hello");
易错情况:
1、char a[10]; a[10]="hello";//一个字符怎么能容纳一个字符串?况且a[10]也是不存在的!
2、char a[10]; a="hello";//这种情况容易出现,a虽然是指针,但是它已经指向在堆栈中分配的10个字符空间,现在这个情况a又指向数据区中的hello常量,这里的指针a出现混乱,不允许!
main()
{
char s[30];
strcpy(s, "Good News!"); .
}
上面程序在编译时, 遇到char s[30]这条语句时, 编译程序会在内存的某处留出连续30个字节的区域, 并将第一个字节的地址赋给s。当遇到strcpy( strcpy 为Turbo C2.0的函数)时, 首先在目标文件的某处建立一个"Good News!/0" 的字符串。其中/0表示字符串终止, 终止符是编译时自动加上的, 然后一个字符一个字符地复制到s所指的内存区域。因此定义字符串数组时, 其元素个数至少应该比字符串的长度多1。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
索爱U100i是移动3G吗?
蓝宝石HD4860 白金版与富士康的主板兼容不。
萝岗区好和副食我想知道这个在什么地方
为什么我退不出QQ班级啊
番禺石基第三中学的初中部可以直升其中学的高
怎么有效去除房间里的灰尘?(太多啦)
河南高速公路春节收费
福州美容粉末批发市场在哪里?就是于美容,美
为什么edg上单没有corol
下列属于富含淀粉的块根植物是A.小麦B.玉米C.
美国加息对什么利好,美国加息,对美元利好还
自我介绍比如比较内向的热爱班级体等
关于天才麻将少女的问题
什么季节去吴哥窟旅游最合适呢?
卧龙区文化馆文化艺术培训活动中心怎么去啊,
推荐资讯
有一个电影里面有一个人说:包租婆怎么有没水
和好奇有关的名言,有关好奇心的英语名言?
罗嘉良是为啥和前妻方敏仪离婚的呢?而且连儿
多普达830那个版本最好?
已知实数a、b在数轴上的对应点的位置如右图所
恋爱的问题,
coc近期捐兵 指的是多久时间内捐兵数量
有没有治痛风的药或妙招
老滚求资源!上古卷轴5:天际 两周年高清整合
猪跑了怎么办?打一明星名字
我是1989年农历冬月二十四,是属于什么星座?
DNF我打老大,打死了,任务书得不到啊
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?