如何在C中为char*赋值?
这个代码不起作用如何在C中为char*赋值?,c,char,assign,C,Char,Assign,这个代码不起作用 char* randomWordHidden[length]; char try; printf("Enter a letter: "); scanf(" %c", &try); //here there is a loop randomWordHidden[i] = try; //assign position of randomWordHidden with try value 它给出错误:[警告]赋值从整数生成指针而不进行强制转换 但我这样做了,
char* randomWordHidden[length];
char try;
printf("Enter a letter: ");
scanf(" %c", &try);
//here there is a loop
randomWordHidden[i] = try; //assign position of randomWordHidden with try value
它给出错误:[警告]赋值从整数生成指针而不进行强制转换
但我这样做了,它也起作用了:
randomWordHidden[i] = "H";
如何将try var的值分配给randomWordHidden的位置?您的
randomWordHidden
不是一个char
数组,而是一个char*
数组,因此实际上是一个字符串数组。这就是为什么分配char
会给您一个警告,因为您无法执行char*=char
。但是“H”
的赋值是有效的,因为它不是字符
——它是一个字符串(const char*
),由字母'H'
和终止字符'\0'
组成。这是char
-'H'
,这是字符串(char
数组)“H”
您很可能需要将
randomWordHidden
数组的声明更改为char
,而不是char*
您的randomWordHidden
不是一个char
数组,而是一个char*
数组,因此实际上是一个字符串数组。这就是为什么分配char
会给您一个警告,因为您无法执行char*=char
。但是“H”
的赋值是有效的,因为它不是字符
——它是一个字符串(const char*
),由字母'H'
和终止字符'\0'
组成。这是char
-'H'
,这是字符串(char
数组)“H”
您很可能需要将
randomWordHidden
数组的声明更改为char
,而不是char*
我相信数组已经是指针了,不需要该声明
字符隐藏[长度]
试试看?我相信数组已经是指针了,不需要这样声明 字符隐藏[长度] 试试看?好吧 您已经创建了指向字符的指针列表(长度
长度)。我想你想要的是:
char randomWordHidden[length];
应该是长度
字符。好
您已经创建了指向字符的指针列表(长度长度)。我想你想要的是:
char randomWordHidden[length];
应该是长度
个字符