尝试memset
静态分配的字符数组时出现段错误,但对于使用malloc
.
变量定义:
//static
char inBuff[IN_BUFF_LEN];
//dynamic
char * inBuffD;
函数调用:
//static, cast used because char** != char (*) [n]
serverInit(portNum, (char**) &inBuff, &serv_addr, &sockfd)
//dynamic
serverInit(portNum, &inBuffD, &serv_addr, &sockfd)
在函数内使用:
memset(*inBuffAdr, 0, IN_BUFF_LEN);
我怀疑我的问题在于函数调用的差异,或者更准确地说,我对“char**!= char (*) [n]”情况的不完全理解。但我一直在敲打这个太久了,不能从树上看到森林,所以任何提示和建议将不胜感激。