File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -29,11 +29,10 @@ void low_level_function() {
2929}
3030
3131int main () {
32- int result = setjmp(env);
33- if (result == 0) {
32+ if (setjmp(env) == 0) {
3433 low_level_function();
3534 } else {
36- std::cout << "エラーから復帰しました:" << result << std::endl;
35+ std::cout << "エラーから復帰しました" << std::endl;
3736 }
3837
3938 return 0;
@@ -46,7 +45,7 @@ int main () {
4645### 出力
4746```
4847何らかのエラー
49- エラーから復帰しました:42
48+ エラーから復帰しました
5049```
5150
5251## 関連項目
Original file line number Diff line number Diff line change @@ -27,7 +27,7 @@ namespace std {
2727
2828## 備考
2929
30- * ジャンプによって自動記憶域期間を持つオブジェクトのスコープを抜ける際、そのオブジェクトが非自明なデストラクタを持つ場合 、動作は未定義である。
30+ * ジャンプによって自動記憶域期間を持つオブジェクトのスコープを抜ける際、そのオブジェクトが非トリビアルなデストラクタを持つ場合 、動作は未定義である。
3131* コルーチンのサスペンションコンテキスト内で呼び出された場合、動作は未定義である。
3232
3333## 例
@@ -44,11 +44,10 @@ void low_level_function() {
4444}
4545
4646int main () {
47- int result = setjmp(env);
48- if (result == 0) {
47+ if (setjmp(env) == 0) {
4948 low_level_function();
5049 } else {
51- std::cout << "エラーから復帰しました:" << result << std::endl;
50+ std::cout << "エラーから復帰しました" << std::endl;
5251 }
5352 return 0;
5453}
@@ -61,7 +60,7 @@ int main () {
6160
6261```
6362何らかのエラー
64- エラーから復帰しました:1
63+ エラーから復帰しました
6564```
6665
6766## 関連項目
Original file line number Diff line number Diff line change 1515
1616このマクロは以下の文脈でのみ現れる。
1717
18- 1 . 条件式または反復式の制御式全体
19- 2 . 関係演算子または等価演算子のオペランドの一つ(もう一つのオペランドは整数定数)
18+ 1 . ` if ` 文、 ` switch ` 文やループの条件式全体
19+ 2 . 関係演算子または等価演算子のオペランドの一つ(もう一つのオペランドは整数定数)で、その結果式が1を満たす場合
20203 . ` ! ` のオペランドであり、その結果式が1を満たす場合
21- 4 . 式文の式全体(void型へのキャストを含む )
21+ 4 . expression statementの式全体( ` void ` 型へのキャストを含む )
2222
2323上記以外の箇所での呼び出しは未定義の動作となる。
2424
3030
3131## 備考
3232
33- * 対応する` setjmp ` と ` longjmp ` の間で、自動記憶域期間を持つ非自明なデストラクタを持つオブジェクトの生存期間が終了する場合 (ジャンプによってデストラクタを飛ばす場合)、その動作は未定義である。
33+ * 対応する` setjmp ` と ` longjmp ` の間で、自動記憶域期間を持つ非トリビアルなデストラクタを持つオブジェクトの生存期間が終了する場合 (ジャンプによってデストラクタを飛ばす場合)、その動作は未定義である。
3434* コルーチンのサスペンションコンテキスト内で呼び出された場合、動作は未定義である。
3535
3636
@@ -48,11 +48,10 @@ void low_level_function() {
4848}
4949
5050int main () {
51- int result = setjmp(env);
52- if (result == 0) {
51+ if (setjmp(env) == 0) {
5352 low_level_function();
5453 } else {
55- std::cout << "エラーから復帰しました:" << result << std::endl;
54+ std::cout << "エラーから復帰しました" std::endl;
5655 }
5756
5857 return 0;
@@ -67,7 +66,7 @@ int main () {
6766
6867```
6968何らかのエラー
70- エラーから復帰しました:42
69+ エラーから復帰しました
7170```
7271
7372## 関連項目
Original file line number Diff line number Diff line change 1- # __ STDC_VERSION_SETJMP_H __
1+ # \_\_ STDC_VERSION_SETJMP_H __
22* csetjmp[ meta header]
33* macro[ meta id-type]
44* cpp26[ meta cpp]
You can’t perform that action at this time.
0 commit comments