簡體   English   中英

結構中數組內的函數指針

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM