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
,但这会引发精确丢失警告
答案 0 :(得分:2)
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];
答案 1 :(得分:0)
如上所述,您正在尝试将数组复制到单个字符,但我不认为这是您唯一的问题, 我不知道你试图实现什么,但除非你确定数组中有\ 0,否则你的缓冲区会溢出, 即使你确定我建议使用strncmp和strncat等安全功能。
如果你想要,你可以解释你想要做什么,我很乐意提供帮助。
祝你好运