[英]Function pointer within array within struct
我試圖創建並調用一個函數指針,但是當我嘗試調用該函數指針時,我的程序崩潰了,Valgrind給了我一個錯誤。
結構中的函數指針定義為:
BOOLEAN (*function)(int * input_int);
然后我稱它為:
array[0].function(input);
(其中輸入為整數)
當我打電話給我時,盡管在Valgrind中遇到錯誤,但跳轉到一個無效的地址。 我在這里做錯了什么?
編輯:
我的壞處是我的虛擬函數的定義方式:
array[0].function = &dummy_function;
BOOLEAN dummy_function(int * input_int)
{
if(input_int == 0)
return TRUE;
}
輸入不應為整數,而應為整數指針,而不是:
array[0].function(input);
嘗試:
array[0].function(&input);
也用
array[0].function = dummy_function;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.