-2
我是C編程新手,想了解基礎知識。任何人都可以幫助我如何調用一個參數是一個指針的函數嗎?C編程調用函數
,我在user.c
文件中的代碼:
struct user * play_game(struct user * first, struct user * second)
{
game_board board;
enum cell token;
struct user * current, *other, *winner;
}
的代碼也是user.h
文件,但沒有內部聲明。 我如何能夠在main.c
文件中調用它?我不確定參數是什麼以及它是如何工作的。
你有什麼瞭解了一元'&'和'*'運營商? main()'程序中變量的類型是什麼,因爲這將控制你如何調用函數。如果你有'struct user * u1 = ...; struct user * u2 = ...;'你將使用'struct user * winner = play_game(u1,u2);' - 但是如果你有'struct user u1 = {...}; struct user u2 = {...};''你將使用'struct user * winner = play_game(&u1,&u2);'。 –
我的程序設計知識真的不好抱歉,我現在知道的是,如果一個變量有*我試圖在main()之前聲明struct user * play_game(struct user * first,struct user * second),並在其中放置代碼用戶* play_game (struct user * first,struct user * second)。不知道我是否可以用它來理解它。 – Gray
您對'*'和'&的理解或多或少都是準確的 - 原始的,但可能對於假設你已經在某處定義了'struct user',那麼你應該使用你所展示的函數聲明,如果你得到一個編譯錯誤,你需要向我們展示一個MCVE([MCVE]) - 而實際錯誤信息,行號應該足夠小(例如在30以下),它是e對我們來說,看看發生了什麼問題。如果它不是那麼小的行號,代碼的可能性還不夠小。 –