static char a[255] = "\0";
and
const char *b = " ";现在,当我将"abc“赋值给a和b时,对于a,剩余的252个字节保持为'\0‘,而对于b,则不是这样。所以,当我试着比较它们时,发现它们是不同的。一种解决方案是像我们在strncmp()中所做的那样,只比较到sizeof(b)。有没有其他的方法呢?可能是通过将一个转换为另一个?
提前谢谢。
发布于 2010-10-29 13:52:26
首先,你不想把"abc“赋值给b。当你改变这个值时,它会导致C风格字符串的内存泄漏。
为了进行比较,您需要使用strcmp函数。它在图书馆里。
https://stackoverflow.com/questions/4049316
复制相似问题