我创建了一个非常简单的代码,但它不起作用!我只想创建一个包含字符串的数组。但是,这些字符串必须不带字符字符方法。换句话说:
#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]
我该怎么办?
答案 0 :(得分:1)
for (i=0;i<20;i++)
strcpy(wstr[i], "BA");
单引号用于单个字符;字符串文字使用双引号。
strcpy()
调用可确保您以后可以修改这些值,
因为修改字符串文字本身是未定义的行为。