プロが教えるわが家の防犯対策術!

だけど実行結果は4194432になります。なんでですか?

#include<stdio.h>

void func (int a, int b, int c)
{
c=a+b;
}

int main (void)

{ int c;

func(2,3,c);

printf("%d\n", c);

return 0;

}

A 回答 (1件)

func(2,3,c);


で、未初期化(値が不定)のcを渡して、
c=a+b;
で、main()のcとは別に確保されたローカル変数に値を格納し、
printf("%d\n", c);
で、最初の未初期化のcの内容を表示しています。

main()内のcとfunc()内のcは別物なので注意してください。
    • good
    • 0
この回答へのお礼

ありがとう

ありがとございます⸜(๑’ᵕ’๑)⸝

お礼日時:2021/11/08 11:11

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!