我创建了一个非常简单的代码,但它不起作用!我只想创建一个包含字符串的数组。然而,这些字符串必须不使用字符-字符方法来放置。换句话说:
#include <stdio.h>
#include <stdlib.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char *argv[]) {
char wstr[20][10];
int i;
for (i=0;i<20;i++)
wstr[i]='BA';
return 0;
}
但是编译器向我显示警告和错误:
[Error] incompatible types when assigning to type 'char[10]' from type 'int'
[Warning] multi-character character constant [-Wmultichar]
我应该做什么?
最佳答案
for (i=0;i<20;i++)
strcpy(wstr[i], "BA");
单引号用于单个字符;字符串文字使用双引号。
strcpy()
调用可确保您稍后能够修改这些值,
因为修改字符串文字本身是未定义的行为。
关于c - 尝试将字符串放入c中的数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23450707/