-1
私はC言語に少し問題があります。複数の引数を持つ関数ポインタ
複数の引数(構造体と変数)を持つ関数へのポインタを作成しようとします。
私の関数のプロトタイプは次のとおりです。
void db_insert(
struct DataBase *db,
struct auto_increment *a_i,
enum db_insert_types db_insert_type,
...
);
とポインタが同じように定義されています。これは、停止」に私のアプリを引き起こし
int main() {
struct DataBase db;
struct auto_increment a_i;
void (*fct)(struct DataBase *db, struct auto_increment *a_i, enum db_insert_types db_insert_type,...);
fct = &db_insert;
(*fct)(&db, &a_i, db_insert_modele, 1, 2, 3, "asd", "dan", "mere");
db_initiate(&db, &a_i);
db_free_mem(&db);
return 0;
}
:私はのようにポインタを使用
void (*fct)(
struct DataBase *db,
struct auto_increment *a_i,
enum db_insert_types db_insert_type,
...
);
作業中 "
私は間違っているの?
"*しかし、ポインタが私のプログラムをクラッシュさせてしまいます*"、おそらくそうではありませんが、どのように使用されているのですか*表示しません。 – alk
「自分のプログラムがクラッシュする」とはどういう意味ですか?ポインタを使って関数を呼び出すとクラッシュしますか?ポインタの代入と関数呼び出しのコードはどのように見えますか? –
編集:あなたは正しく、ポインタの呼び出しによってクラッシュが発生します –