关于strcmp函数的问题
程序中有两个字符串,一个属于类数组变量:
class _FPGA
{
//......
char DataToFpga[DataToFpgaLength]; // 最终经过转换传给fpga的数据
//......
}
一个属于函数内部分配的内存空间:
void _FPGA::test( void )
{
//......
char *ReadFlag = new char[40000];
//......
ReadFlag = xxx.Readxxx();
if( !strcmp( ReadFlag,DataToFpga ) )
{
xxxxx;
}
}
现在函数的作用是首先让ReadFlag指向另一个函数的返回字符串,然后让其和DataToFpga比较,看是否相等,具体实现如上,可不管ReadFlag 获得的是什么样的返回值,strcmp都是返回,也就是相等,请问是为什么?