No.3
- 回答日時:
>*a++=*b++;
これは全く問題ありません。
1)*a = *b;
2)a++;
3)b++;
2)と3)は逆かもしれませんが、どちらが先でも問題ないですね。
>a[i] = ++i;
これは未定義です。a[i]にアクセスするときのiが、
インクリメントする前なのかした後なのか、
処理系によって異なります。どちらかに決めつけることはできません。
えっと・・・つまりやはりインクリメントされたものが複数回含まれると・・・でいいのですか?
それともそれだけでは説明しきれないのでしょうか?
a[i] = i++;
の場合はどうなのでしょうか?
No.2
- 回答日時:
>式中にインクリメント、デクリメントがある場合、制御の順番はちゃんと定義されていないようですが
ちゃんと定義できる場合もあります。
具体的にどういうコードを想定されていますか?
No.1
- 回答日時:
規格上は、実行するたびに異なるということもありえます。
というか、実行順が結果に影響を与えるようなケースは「未定義」とされていますので、鼻から悪魔が出てきてもかまいません。
ということを踏まえたうえで、
>・これは、一度コンパイルされてしまったら、もう動作はその時置き換えられた形で固定される。
>・同じコンパイラ、同じ環境で、同条件でコンパイルした場合は、まず間違いなく同じ結果が得られる。
>・ただし、その順序はコンパイラ毎に違う可能性がある。
この世に存在するほぼすべての実装はこうなっているでしょう。
ただし、それに頼った書き方をするのは間違いです。
ありがとうございます。
では、具体的にはどういうのがまずくて
どういうのがいいのでしょうか?
例えば
*a++=*b++;
などと言った表記は本やネットで何度も見かけたことがありました。
つまりこのように、式中に一つだけしかなければOKで
a[i] = ++i;
や
Text = i++ +""+ i++;
などのように
式中に同一の変数が、一度でもインクリメント、デクリメントされている形で複数回あるとNG、ということでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) [条件付き書式]の設定順の変更は可能か? 4 2022/12/07 10:37
- 数学 順序集合における「反射律」の役割について 9 2022/05/09 23:01
- 兄弟・姉妹 弟の結婚についてです 長文です。 最近、弟が授かり婚をすることを父からLINEで聞かされました。 授 8 2022/07/16 15:44
- C言語・C++・C# 変数のスコープ 5 2023/05/27 17:50
- 数学 前順序集合についての違和感なんですが、全順序と違ってすべての要素の間に順序があるわけではないですよね 3 2022/08/09 00:05
- 数学 英単語の集合に、普通の英和辞典の順序(辞書的順序)とは違う順序を定義せよ。 数学の問題なのですが意味 2 2022/07/28 00:39
- gooポイント gooポイントをdポイントに交換できない。 3 2022/04/22 20:39
- 物理学 運動量演算子の交換関係について 5 2022/06/14 17:17
- その他(プログラミング・Web制作) awkの文字列比較はPOSIXロケールまたはCロケールにおいてバイナリ値の比較に使えるか gawkな 1 2023/04/22 09:21
- Excel(エクセル) Excel 同一セル内 年、日 入れ替え 5 2022/04/09 01:48
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
0除算して、落ちるプログラムと...
-
C++ で、「)」が必要 というエ...
-
「.c」拡張子でC++文法を使...
-
conio.h? curses.h?
-
コンパイラについて
-
C++でアボート(Abort)で処理が...
-
io.hをincludeしたプログラムで...
-
io.hをincludeするとそのような...
-
プリコンパイラとは?
-
バイナリファイルとソースコー...
-
コンパイルできない
-
どのプログラミング言語ででき...
-
ccコマンドの使い方
-
C言語のオススメ統合開発環境(...
-
【JAVA】数字をひし形に出力す...
-
Excelで4096点以上のFFTの方法
-
めちゃきれい
-
Notepad++の関数リスト表示でC...
-
自動クエリとはどういうもので...
-
正しい五十音順について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
0除算して、落ちるプログラムと...
-
C++ で、「)」が必要 というエ...
-
コンパイルできない
-
C++でアボート(Abort)で処理が...
-
変数(関数)名の頭に_
-
Visual C++とVisual C++.NETの違い
-
Eclipseの環境設定について
-
volatile修飾について
-
コンパイラについて
-
linuxのセキュリティ対策と致し...
-
io.hをincludeするとそのような...
-
__extension__
-
コンパイラフラグ(compiler fla...
-
PICマイコンによる乱数の表示に...
-
関数の戻り値による変数の初期化
-
conio.h? curses.h?
-
ABAQUS ユーザーサブルーチン...
-
【エラー】Cpadで初めてコンパイル
-
Delphiの逆コンパイル
-
graph.hがincludeできない
おすすめ情報