字符数组清空的问题
- C/C++ code
while(1){ if(share||share1) /*share和share1为共享内存*/ { if(a>2&&share) { strcpy(buf1,share); sendto(buf1); metset(buf1,0,sizeof(buf1)); metset(share1,0,sizeof(share1)); a--; } else { strcpy(buf2,share1); sendto(buf2); metset(buf2,0,sizeof(buf2)); metset(share2,0,sizeof(share2)); a--; } }share1和share为共享内存。。。。buf和buf1为字符型数组。我用简单的udpsocket sendto时,。当共享内存有东西时候就sendto。接受到的data也没有问题。但是接下来memset以后 就会不停的发空包。data部分全是0.
后来试了下 buf[a]='/0’ 也没有用。。
想求组下 字符数组 和共享内存 到底应该怎么清空。。
万分感谢
[解决办法]
另外加个变量来表示空和不空。
或者你可以自己规定内存初始为0为空 -- 要看你的程序是不是认为发0是不是非法的。
share[0] == 0?