3
下面顯示的代碼有什麼問題。警告C4047:'=':'char'與'char *'的間接級別不同。
char filter[2] = {'\0'};
*filter = (char *)calloc((unsigned int)buf.st_size + 1, sizeof(unsigned char));
根據我的理解,改變陣列位置沒有問題吧?爲什麼我問這是因爲警告,
Warning 1 warning C4047: '=' : 'char' differs in levels of indirection from 'char *'
有什麼想法嗎?
明白了,將代碼更改爲。由於@ouah
char *filter = {'\0'};
filter = (char *)calloc((unsigned int)buf.st_size + 1, sizeof(unsigned char));
「按照我的理解,改變陣列位置沒有問題吧?」有,這是不可能的。但這不是代碼所要做的。 –
現在是C還是C++?如果是C,則不要使用'malloc()'的返回值。 – 2013-03-31 15:28:08
@DanielFischer我的意思是說,即使我最初分配了一個兩字節的char數組,我稍後可以分配一塊內存,並將數組指向它。這不可能嗎? –