#include <studio.h>
int func(int a,int *p);
int main(void){
int s=132, a, b;
b=func(s,&a);
printf(“%d¥n”,b);
printf(“%d¥n”,a);
return 0;
}
int func (int a,int *q){
*q=a+5;
return (*q)+25;
}
解説お願い致します!
#if 0
インクルードすべきファイル名が間違っています。studio(これじゃスタジオ)
ではなくて、stdio(標準入出力standard input/output)です。
また、変なところに全角のダブルクォーテーションがあるのもいただけません。
あと、インデント(字下げ)ってご存じですか?今のようなノッペリしたコードは、
あまり読む気になれません。メリハリを付けましょう。
p.s.
あまり「至急」って書かない方がいいと思う。ていうか、投稿のタイトルは、
中身がある程度わかるものにしていただきたいような気がしないでもない。
#endif
#include <stdio.h>
int func(int a, int *p);
int main(void)
{
// sは132で初期化しているが、aとbの中身はこの時点では不定(要するにゴミ)
int s = 132, a, b;
// 変数aのアドレスを渡しているのは、その場所の中身を書き換えたいな~という意図
b = func(s, &a);
printf("%d\n", b); // func関数から戻ってきた値(戻り値)を出力
printf("%d\n", a); // func関数で中身を書き換えたaの値を出力
return 0;
}
int func(int a, int *q)
{
// main関数から受け取った132という値に5を足した結果(137)を、
// 変数qが指している場所に格納
*q = a + 5;
// 137に25を加えた162という値を、main関数へ戻す
return *q + 25;
}