本文介绍了字符数组的初始化的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我目前打了一下C和试图了解字符串。可有人请解释为什么这是工作:
字符测试[] =测试;
为什么下面不?
字符测试[255];
测试=测试;
解决方案
由于这是一个的初始化的:
字符测试[] =测试;
和这是一个分配的:
测试=测试;
和您不能分配在C数组(和字符串中的C是刚数组)。
您最好的选择是使用复制字符串的strcpy()
(或者是安全的,的)。
I'm currently playing a bit with C and trying to understand strings. Can somebody please explain why this is working:
char test[] = "test";
And why the following does not?
char test[255];
test = "test";
解决方案
Because this is an initialization:
char test[] = "test";
and this is an assignment:
test = "test";
and you cannot assign arrays in C (and strings in C are just arrays).
Your best bet is to copy the string using strcpy()
(or to be safe, strncpy()
).
这篇关于字符数组的初始化的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!