コードHello World In GTKをこのリンクから取得しました。そこでは多くのコールバック関数を使用しますが、各コールバック関数について言う
static void hello( GtkWidget *widget,gpointer data )
それをコールバックとして使用すると、
g_signal_connect (button, "clicked",G_CALLBACK (hello), NULL);
ただし、ここでは hello() 関数に引数を渡していません。通常の関数でこれを実行しようとすると、つまり
#include <stdio.h>
int hello(int a) {
printf("hello");
}
void main() {
int j=10;
hello;
}
エラーも出力もありません。
Q1. コールバック関数が引数を無視するのはなぜですか?
Q2. 関数コールバックを作成するには? つまり、私の 2 番目hello
の例では、関数 hello はコールバックになりますか?