我不明白是什麼導致內存訪問錯誤在這裏。這是什麼導致內存訪問錯誤?
我做了這個簡單的例子,這說明我的問題:
#include <stdlib.h>
typedef struct mycanvas {
void *pixels;
} mycanvas;
main()
{
void* testchunk;
testchunk = (void*) calloc (1024 * 768 * 4,sizeof(char));
struct mycanvas* new_canvas;
new_canvas->pixels=testchunk; //causes memory access error
}
什麼需要改變,以得到它的運行?這是Linux上的gcc。
什麼是'new_canvas'指向? –
這不會編譯爲C++。你確定你不用C編碼嗎? – Mat
我強烈建議你使用'main'作爲返回一個整數的函數,如:'int main(void)'... –