当我尝试编辑一段共享内存时,程序会挂起。 我正在尝试创建一个共享内存段,其中包含最多20个字符的字符串(不包括\ 0)
char** mem;
mem = mmap(NULL, 20, PROT_READ|PROT_WRITE, MAP_SHARED, -1, 0);
char* new = getNewString();
strncpy(*mem, new, strlen(new));
该程序挂起strncpy。做了我自己的循环,就像strncpy一样,当我尝试设置第一个字符时,它会挂起。
如果我遇到某种错误,我可以做得更多,但我很难过。