C 我不清楚错误消息
上面提到的这两种说法都是无效的 “错误:赋值从指针生成整数而不进行强制转换” 错误消息不清楚。这里的整数是什么?正在转换为哪个指针 整数C 我不清楚错误消息,c,C,上面提到的这两种说法都是无效的 “错误:赋值从指针生成整数而不进行强制转换” 错误消息不清楚。这里的整数是什么?正在转换为哪个指针 整数 char name[10]="James"; //valid statement char name[10]; strcpy(name,"james"); //valid statement char name[10]; name[10]="james"; //invalid statement *name="james";
char name[10]="James"; //valid statement
char name[10];
strcpy(name,"james"); //valid statement
char name[10];
name[10]="james"; //invalid statement
*name="james"; // invalid statement
错误:从类型char分配给类型char[10]时,类型不兼容
请向我解释错误信息。他们到底在做什么。问题在于:
name[10]=“詹姆斯”代码>
在此上下文中,name[10]是一个char(整型),而“james”是一个指针(指向char)。因此,您试图将指针转换为字符,这是无效的转换
请注意,在编写时:
字符名[10]代码>您正在定义一个大小为10的字符数组
当你只写:
name[10]
您所指的是name的元素索引10,即name中的第11个字符(实际上超出了范围,name
中的有效字符索引是name[0]
。name[9]
)。更具体地说,name[10]
是“name
的第11个字符”。以下错误如何处理:当从类型char分配给类型char[10]时,类型不兼容“此上下文中的名称[10]是一个char(它是一种整数类型)”-不清楚这是一个整数。你的意思是说这里考虑了ASCII值吗?@user427394:字符只是整数的一种类型-它通常是一个8位整数,如果你愿意,它可以解释为一个字符值,但基本上它只是一个整数。
char name[10];
name="james"; //invalid statement