这个问题在这里已经有一个答案:>
problems with char array = char array2
这里是我的第一篇文章.我一直在尝试选择这个选择,我希望用户只选择数字而不是输入数字(更容易),但是当我想要数字等于一个字符串时,它表示“数组类型char [30]不是分配”.即使在后面我把分号也不是.
这里是我的第一篇文章.我一直在尝试选择这个选择,我希望用户只选择数字而不是输入数字(更容易),但是当我想要数字等于一个字符串时,它表示“数组类型char [30]不是分配”.即使在后面我把分号也不是.
#include <stdio.h> int main() { int choice1; char word[30]; printf("You have three choice.\n"); printf("[1] Jump [2] Run [3] Dance\n"); scanf("%d",&choice1); if (choice1 == 1) { word = "Jump" //Error #1 } else if (choice1 == 2) { word = "Eat" //Error #2 } else if (choice1 == 3) { word = "Sleep"; //Error #3 } printf("You will now be %sing",word); }
解决方法
您不能分配到一个数组,只能复制到它.
改为使用strcpy
,像
strcpy(word,"Jump");