【发布时间】:2020-03-23 17:09:33
【问题描述】:
不断收到错误消息:[警告] 赋值使指针从整数转换为 - l[i] = 字符串[i]; 和 r[j] = 字符串[j];
有人可以解释原因并提出一些更改,以使代码正常工作而不会出现任何错误吗? (我刚开始学习 C lol,我已经习惯了 java,所以我在使用字符串时有点挣扎)
void split_string_at_index(char* string, int index, char* left, char* right) {
int size = sizeof(string);
char* r[MAX_SUBSTRING];
char* l[MAX_SUBSTRING];
int i,j;
for(i = 0; i<index; i++){
l[i] = string[i];
}
for(j = index; j<size;j++){
r[j] = string[j];
}
}
【问题讨论】:
-
很好,您已启用警告。试试
char* r[MAX_SUBSTRING];-->char r[MAX_SUBSTRING];。删除*。 -
size = sizeof(string)给代码string的大小,这是一个char *指针。我怀疑代码需要知道指针的大小。 pr0jectgamer,那条线的目标是什么?
标签: c compiler-warnings implicit-conversion