如何将字符串传递给C中的char数组

char array[2];
array = "h";

给出以下错误:

错误:从类型'char'分配类型'char [2]'时不兼容的类型

char array[2];
array[] = "h";

给出以下警告:

警告:赋值使得指针中的整数不带强制转换

我尝试了这两种方法将值h传递给数组,但我不能。 我想知道问题是什么。


数组不能指向新的地址。

你可以用一个字符串常量来初始化它们:

char array[2] = "h";

或者您可以稍后将数据复制到阵列中:

char array[2];
strcpy(array, "h");

要么:

array[0] = 'h';
array[1] = '';

如果你使用了char * ,你的第一个例子可以工作:

char *array = NULL;
array = "h";
链接地址: http://www.djcxy.com/p/28361.html

上一篇: how to pass strings to char array in C

下一篇: is it necessary to type