
下に書いたプログラムを実行すると40が出力されるとおもったら、50が出力されました。なぜかおしえてください。(七行目までで*b=40になるところまではわかりました。
八行目でa=50としているものの、次の行でa = *bとあるのでa=40ではないかと考えました。)
#include <stdio.h>
int main(void){
int a = 10;
int *b;
a = a + 10;
b = &a;
*b = a + a;
a = 50;
a = *b;
printf("%d \n", a);
return 0;
}
No.5
- 回答日時:
>八行目でa=50としているものの
*b は書き替えられて50になっているaを指している
わけで、この時点で 40 が代入された変数aはどこにも残っていないよ。
No.4
- 回答日時:
途中
b = &a;
としているので b には a のアドレスが入る. つまりこれ以降 *b は a のエイリアスになる. そして
a = 50;
とあるので a は 50 になるわけだが, *b は a と同じなのでこの時点で *b も 50 になっている.
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# 至急教えてください! プログラミングの問題です! お願いします! 出力2と全く同じ出力をするように、 2 2022/06/22 23:10
- C言語・C++・C# C言語 3 2022/10/04 15:07
- C言語・C++・C# 至急教えてください!プログラミングの問題です。 割られる整数と割る整数を受け取って、商と余りを出力す 3 2022/07/05 10:23
- C言語・C++・C# C言語の課題が出たのですが自力でやっても分かりませんでした。 要素数がnであるint型の配列v2の並 3 2022/11/19 17:41
- C言語・C++・C# プログラミングペーパーテスト 次の問題の実行結果を答えろ #include int x[ ] = { 1 2022/06/16 21:49
- C言語・C++・C# c言語でユーザ関数を利用して入力された文字列を反転させるプログラムを作りたいです。 3 2023/01/29 19:47
- C言語・C++・C# プログラミングの授業のペーパーテスト 実行結果を答えろ #include int x[ ] = {1 3 2022/06/16 20:08
- C言語・C++・C# 宣言する関数の形が決まっている状態で、 str1とstr2の文字列をこの順に引っ付けてstrに保存し 2 2022/05/30 18:21
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- C言語・C++・C# c言語の問題です 課題1 (二分探索木とセット) 大きさ size の配列 array を考える。す 2 2023/01/10 21:08
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語での引数の省略方法
-
#define _CRT_SECURE_NO_WARNIN...
-
「指定されたキャストは有効で...
-
複数桁10進数の*桁目だけを抽出...
-
ラップ関数とはどんなものですか?
-
system関数がうまくいかない
-
未解決の外部シンボル _printf...
-
マルチスレッドでバグが発生します
-
return 1L
-
c言語マップ探査ゲーム プログ...
-
c言語についてですが
-
数字列を3桁ごとにカンマで区切...
-
比較回数と交換回数表示について
-
エクセル関数で
-
数値を入力して1からその数値ま...
-
c言語で「5人の学生の学籍番号...
-
課題でつまってます・・・
-
int型の表せる範囲
-
(int *)の意味
-
パスカルのピラミッドを作りた...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「指定されたキャストは有効で...
-
C言語での引数の省略方法
-
#define _CRT_SECURE_NO_WARNIN...
-
複数桁10進数の*桁目だけを抽出...
-
ラップ関数とはどんなものですか?
-
C言語 エラーの原因がわからな...
-
(int *)の意味
-
【C++】関数ポインタの使い方
-
if と配列の組み合わせ
-
構造体の勉強中です 合計点の高...
-
windows-findstrの正規表現を使...
-
C言語で分からないところがあり...
-
int型の変数値をバイト列として...
-
PowerShellがうまくいかない
-
C言語での奇数の和
-
「{ } で囲むだけ」は正しい?
-
std::set<int> で、ある値が何...
-
実数の整数部,小数部の取得
-
エラー 添字が付けられた値が、...
-
int16_t の _t は何?
おすすめ情報