【发布时间】:2011-09-27 17:32:30
【问题描述】:
我有一个这样声明的字符串数组:
char parts[PART_COUNT][PART_MAX];
然后我创建了一个函数,它接受一个字符串和一个字符串数组并将其拆分为这些部分,声明如下:
WORD PartString(const char *str, char **parts, char sep);
我似乎可以阅读parts[i][j],但如果我尝试这样分配:
parts[i][j] = str[x];
我收到此错误:
remote.exe 中 0x012614d8 处未处理的异常:0xC0000005:访问冲突写入位置 0xcccccccc。
谁能告诉我用 C 语言做到这一点的方法?谢谢。
【问题讨论】:
-
char parts[M][N]与char **parts不一样;如果你为了让编译器停止抱怨而执行了强制转换,那么这就是你的问题的原因。 -
编译器没有抱怨,我只是作为 PartString(buffer, parts, '.');
-
这肯定会导致编译器警告或错误消息。
-
您迫切需要处理编译器损坏的事实。
标签: c arrays function multidimensional-array