char buffA[100];
char plan[3][1];
char value[5];
strcpy(value, &buffA[2]);
strcat(value, &buffA[3]);
plan[0][0] = value;
error: invalid conversion from 'char*' to 'char'
如何正确完成此操作? 我也尝试了char *value
但会抛出精度损失警告
plan[0][0]
是一个char
,但value
是一个5 char
的数组。不能将char
数组分配给单个char
。
使用 strncpy
或 memcpy
函数复制char
数组或尝试此操作:
// this will only copy 1 character, not whole array.
plan[0][0] = value[0];
如上所述,您正在尝试将数组复制到单个字符,但我认为这不是您唯一的问题,我不知道你试图实现什么,但除非你确定你的数组中有\0,否则你会在这里有一个缓冲区溢出,即使您确定,我也建议您使用安全功能,例如strncmp和strncat。
如果你愿意,你可以解释你想做什么,我很乐意提供帮助。
祝你好运