我有一个字符串数组,声明如下:
char parts[PART_COUNT][PART_MAX];
然后我做了一个函数,它接受一个字符串和一个字符串数组,并将其拆分为这些部分,声明如下:
WORD PartString(const char *str, char **parts, char sep);
我似乎可以阅读[I][j]部分,但如果我尝试这样分配:
parts[i][j] = str[x];
我得到这个错误:
remote.exe中0x012614d8处未处理的异常:0xC0000005:写入位置0xcccccccc时发生访问冲突。
有人能告诉我用C做这件事的方法吗?谢谢
#define PART_MAX 1024
#define PART_COUNT 4
好吧,设法解决了它,我关闭了编译器警告,当我重新打开它们时,我得到了这个:
'char **' differs in levels of indirection from 'char [4][1024]'
这是一个新的声明,它允许我修改数组中的字符串:
WORD PartString(const char *str, char (*parts)[PART_MAX], char sep)
THen i just pass as:
PartString(buffer, parts, '.');