JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Oracle Solaris Studio 12.3: C ユーザーガイド     Oracle Solaris Studio 12.3 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

1.  C コンパイラの紹介

2.  C コンパイラ実装に固有の情報

3.  C コードの並列化

4.  lint ソースコード検査プログラム

5.  型に基づく別名解析

6.  ISO C への移行

7.  64 ビット環境に対応するアプリケーションへの変換

8.  cscope: 対話的な C プログラムの検査

A.  機能別コンパイラオプション

B.  C コンパイラオプションリファレンス

C.  ISO/IEC C 99 の処理系定義の動作

C.1 処理系定義の動作 (J.3)

C.1.1 翻訳 (J.3.1)

C.1.2 環境 (J.3.2)

C.1.3 識別子 (J.3.3)

C.1.4 文字 (J.3.4)

C.1.5 整数 (J.3.5)

C.1.6 浮動小数点 (J.3.6)

C.1.7 配列とポインタ (J.3.7)

C.1.8 ヒント (J.3.8)

C.1.9 構造体、共用体、列挙型、およびビットフィールド (J.3.9)

C.1.10 修飾子 (J.3.10)

C.1.11 前処理指令 (J.3.11)

C.1.12 ライブラリ関数 (J.3.12)

C.1.13 アーキテクチャー (J.3.13)

C.1.14 ロケール固有の動作 (J.4)

D.  C99 の機能

E.  ISO/IEC C90 の処理系定義の動作

F.  ISO C データ表現

G.  パフォーマンスチューニング

H.  Oracle Solaris Studio C: K&R C と ISO C の違い

索引

C.1 処理系定義の動作 (J.3)

この従属節で一覧になっている各分野での動作の選択肢を文書化するには、処理系に従う必要があります。処理系定義の動作は次のとおりです。

C.1.1 翻訳 (J.3.1)

C.1.2 環境 (J.3.2)

表 C-1 signal 関数のシグナルの意味

シグナル番号
デフォルトのイベント
シグナルの意味
SIGHUP 1
終了
ハングアップ
SIGINT 2
終了
割り込み (rubout)
SIGQUIT 3
コア
終了 (ASCII FS)
SIGILL 4
コア
不当な命令 (捕捉されてもリセットされない)
SIGTRAP 5
コア
トレーストラップ (捕捉されてもリセットされない)
SIGIOT 6
コア
IOT 命令
SIGABRT 6
コア
異常終了時に使用
SIGEMT 7
コア
EMT 命令
SIGFPE 8
コア
浮動小数点の例外
SIGKILL 9
終了
強制終了 (捕捉または無視できない)
SIGBUS 10
コア
バスエラー
SIGSEGV 11
コア
セグメンテーション違反
SIGSYS 12
コア
システムコールへの引数誤り
SIGPIPE 13
終了
読み手のないパイプ上への書き込み
SIGALRM 14
終了
アラームクロック
SIGTERM 15
終了
プロセスの終了によるソフトウェアの停止
SIGUSR1 16
終了
ユーザー定義のシグナル 1
SIGUSR2 17
終了
ユーザー定義のシグナル 2
SIGCLD 18
無視
子プロセス状態の変化
SIGCHLD 18
無視
子プロセス状態の変化の別名 (POSIX)
SIGPWR 19
無視
電源障害による再起動
SIGWINCH 20
無視
ウィンドウサイズの変更
SIGURG 21
無視
ソケットの緊急状態
SIGPOLL 22
終了
ポーリング可能なイベント発生
SIGIO 22
Sigpoll
ソケット入出力可能
SIGSTOP 23
停止
停止 (キャッチまたは無視できない)
SIGTSTP 24
停止
tty より要求されたユーザーストップ
SIGCONT 25
無視
停止していたプロセスの継続
SIGTTIN 26
停止
バックグラウンド tty の読み込みを試みた
SIGTTOU 27
停止
バックグラウンド tty の書き込みを試みた
SIGVTALRM 28
終了
仮想タイマーの時間切れ
SIGPROF 29
終了
プロファイリングタイマーの時間切れ
SIGXCPU 30
コア
CPU の限界をオーバー
SIGXFSZ 31
コア
ファイルサイズの限界をオーバー
SIGWAITING 32
無視
スレッド処理コードで使われていた予約シグナル
SIGLWP 33
無視
スレッド処理コードで使われていた予約シグナル
SIGFREEZE 34
無視
チェックポイント一時停止
SIGTHAW 35
無視
チェックポイント再開
SIGCANCEL 36
無視
スレッドライブラリで使われている取り消しシグナル
SIGLOST 37
無視
リソースがない (レコードロックがない)
SIGXRES 38
無視
リソース制御超過 (setrctl(2) を参照)
SIGJVM1 39
無視
Java Virtual Machine 用に予約 1
SIGJVM2 40
無視
Java Virtual Machine 用に予約 2

C.1.3 識別子 (J.3.3)

C.1.4 文字 (J.3.4)

表 C-2 標準の英字エスケープシーケンスの固有値

エスケープシーケンス
固有値
\a (アラート)
7
\b (バックスペース)
8
\f (フォームフィード)
12
\n (改行)
10
\r (復帰)
13
\t (水平タブ)
9
\v (垂直タブ)
11

C.1.5 整数 (J.3.5)

C.1.6 浮動小数点 (J.3.6)

C.1.7 配列とポインタ (J.3.7)

C.1.8 ヒント (J.3.8)

C.1.9 構造体、共用体、列挙型、およびビットフィールド (J.3.9)

表 C-3 構造体メンバーのパディングと整列

整列境界
バイト整列
char_Bool
byte
1
short
halfword
2
int
word
4
long -m32
word
4
long -m64
doubleword
8
float
word
4
double -m64
doubleword
8
double (SPARC) -m32
doubleword
8
double (x86) -m32
doubleword
4
long double (SPARC) -m32
doubleword
8
long double (x86) -m32
word
4
long double -m64
quadword
16
pointer -m32
word
4
pointer -m64
quadword
8
long long —m64
doubleword
8
long long (x86) -m32
word
4
long long (SPARC) -m32
doubleword
8
_Complex float
word
4
_Complex double -m64
doubleword
8
_Complex double (SPARC) -m32
doubleword
8
_Complex double (x86) -m32
doubleword
4
_Complex long double -m64
quadword
16
_Complex long double (SPARC) -m32
quadword
8
_Complex long double (x86) -m32
quadword
4
_Imaginary float
word
4
_Imaginary double -m64
doubleword
8
_Imaginary double (x86) -m32
doubleword
4
_Imaginary (SPARC) -m32
doubleword
8
_Imaginary long double (SPARC) -m32
doubleword
8
_Imaginary long double -m64
quadword
16
_Imaginary long double (x86) -m32
word
4

C.1.10 修飾子 (J.3.10)

C.1.11 前処理指令 (J.3.11)

C.1.12 ライブラリ関数 (J.3.12)

abort によって wait(3C) または waitpid(3C) から使用できるようにされたステータスが、SIGABRT シグナルで終了されたプロセスのステータスになります。abort(3C)、exit(1)、および _Exit(2) のマニュアルページを参照してください。

exit または _Exit によって返される終了ステータスは、呼び出し側のプロセスの親プロセスが行なっていた処理によって異なります。

呼び出し側プロセスの親プロセスが wait(3C) か wait3(3C)、waitid(2)、waitpid(3C) のどれかを実行していて、その SA_NOCLDWAIT フラグの設定がなく、かつ SIGCHLDSIG_IGN に設定していなかった場合、親プロセスは呼び出し側プロセスの終了の通知を受け、ステータスの下位 8 ビット (すなわち、ビット 0377) を使用できるようになります。親が待ち状態ではない場合は、そのあと、親が wait()、wait3()、 waitid()、waitpid() のどれかを実行した時点で子のステータスを利用できるようになります。

C.1.13 アーキテクチャー (J.3.13)

1999 C 規格に明示的に規定されていないオブジェクトの処理系定義のバイト数と順序、符号化方式は、この章の別の場所で定義する必要があります。

表 C-4 sizeof 演算子の結果 (バイト単位)

バイト単位のサイズ
char_Bool
1
short
2
int
4
long
4
long -m64
8
long long
8
float
4
double
8
long double (SPARC)
16
long double (x86) -m32
12
long double (x86) -m64
16
pointer
4
pointer -m64
8
_Complex float
8
_Complex double
16
_Complex long double (SPARC)
32
_Complex long double (x86) -m32
24
_Complex long double (x86) -m64
32
_Imaginary float
4
_Imaginary double
8
_Imaginary long double (SPARC)
16
_Imaginary long double (x86) -m32
12
_Imaginary long double (x86) -m64
16

C.1.14 ロケール固有の動作 (J.4)

ホスト環境の次の特性はロケール依存で、処理系で文書化する必要があります。

表 C-5 月の名前

January
May
September
February
June
October
March
July
November
April
August
December

曜日の名前は次のとおりです。

表 C-6 曜日の名前と省略名

曜日名
省略名
Sunday Thursday
Sun Thu
Monday Friday
Mon Fri
Tuesday Saturday
Tue Sat
Wednesday
Wed

時間の書式は次のとおりです。

%H:%M:%S

日付の書式は次のとおりです。

%m/%d/ -Xc モード

午前/午後を指定する書式は、次のとおりです。AM PM