警告C4047:'=':'char'的间接级别与'char*'不同

Jim*_*mes 4 c c99 visual-c++

下面显示的代码有什么问题.

char filter[2] = {'\0'};
*filter = (char *)calloc((unsigned int)buf.st_size + 1, sizeof(unsigned char));
Run Code Online (Sandbox Code Playgroud)

根据我的理解,改变阵列位置没有问题吗?为什么我问这是因为一个警告,

Warning 1   warning C4047: '=' : 'char' differs in levels of indirection from 'char *'
Run Code Online (Sandbox Code Playgroud)

任何的想法?

知道了,将代码更改为.谢谢@ouah

char *filter = {'\0'};
filter = (char *)calloc((unsigned int)buf.st_size + 1, sizeof(unsigned char));
Run Code Online (Sandbox Code Playgroud)

oua*_*uah 10

*filter是一个char,你正在为它char *赋值.