JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Oracle Solaris Studio 12.2: C ユーザーガイド
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 の処理系定義の動作

D.  C99 でサポートされている機能

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

E.1 ISO 規格との実装の比較

E.1.1 翻訳 (G.3.1)

E.1.1.1 (5.1.1.3) 診断の認識

E.1.2 環境 (G.3.2)

E.1.2.1 (5.1.2.2.1) main の引数の意味

E.1.2.2 (5.1.2.3) 対話型デバイスを構成するもの

E.1.3 識別子 (G.3.3)

E.1.3.1 (6.1.2) 外部リンケージのない識別子の先頭から (31 を超える) 有意文字の数

(6.1.2) 外部リンケージのある識別子の先頭から (6 を超える) 有意文字の数

E.1.4 文字 (G.3.4)

E.1.4.1 (5.2.1) ソースと実行の文字セットについて (規格に明確に規定されているものを除く)

E.1.4.2 (5.2.1.2) 複数バイト文字を符号化するためのシフト状態について

E.1.4.3 (5.2.4.2.1) 実行文字セットで 1 文字のビット数

E.1.4.4 (6.1.3.4) ソース文字セット (文字と文字列リテラル) メンバーの実行文字セットメンバーへの配置

E.1.4.5 (6.1.3.4) 基本の実行文字セット、またはワイド文字定数用の拡張文字セットのどちらにも表現されていない文字や、エスケープシーケンスを含む整数文字定数の値

E.1.4.6 (6.1.3.4) 2 つ以上の文字を含む整数文字定数の値、または 2 つ以上の複数バイト文字を含むワイド文字定数の値

E.1.4.7 (6.1.3.4) 複数バイト文字を対応するワイド文字 (コード) に変換するのに使用される現ロケール (locale)

E.1.4.8 (6.2.1.1) 何も付いていない char は、signed char と、unsigned char のどちらと同じ範囲の値を持つか

E.1.5 整数 (G.3.5)

E.1.5.1 (6.1.2.5) 整数の型の表現と値について

E.1.5.2 (6.2.1.2) 値を表現できない場合に整数をより短い符号付き整数に変換した結果、また符号なしの整数を同じ長さの符号付き整数に変換した結果

E.1.5.3 (6.3) 符号付き整数におけるビット単位演算の結果

E.1.5.4 (6.3.5) 整数の除算における剰余の符号について

E.1.5.5 (6.3.7) 負の値を持つ符号付き整数型を右シフトした結果

E.1.6 浮動小数点 (G.3.6)

E.1.6.1 (6.1.2.5) 浮動小数点数の型の表現と値

E.1.6.2 (6.2.1.3) 整数値が元の値を完全には表現できない浮動小数点数に変換された場合の切り捨ての指示

E.1.6.3 (6.2.1.4) 浮動小数点数が短い浮動小数点数に変換された場合の切り捨てまたは丸めの指示

E.1.7 配列とポインタ (G.3.7)

E.1.7.1 (6.3.3.4, 7.1.1) 配列の最大サイズを維持するのに必要な整数型。すなわち、sizeof 演算子の size_t の型

E.1.7.2 (6.3.4) ポインタを整数に cast で型変換した結果、またはその逆の結果

E.1.7.3 (6.3.6, 7.1.1) 同じ配列のメンバーへの 2 つのポインタの相違 ptrdiff_t を維持するのに必要な整数型

E.1.8 レジスタ (G.3.8)

E.1.8.1 (6.5.1) register 記憶クラス指定子を使用して、オブジェクトを実際に入れることのできるレジスタの数

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

E.1.9.1 (6.3.2.3) 共用体のオブジェクトのメンバーはほかの型のメンバーを使用してアクセスされる

E.1.9.2 (6.5.2.1) 構造体のメンバーのパディングと整列条件

E.1.9.3 (6.5.2.1) 単なる int のビットフィールドは signed int ビットフィールドとみなされるか、unsigned int ビットフィールドとみなされるか

E.1.9.4 (6.5.2.1) int 内のビットフィールドの割り当て順序

E.1.9.5 (6.5.2.1) ビットフィールドは記憶装置の境界を越えることができるか

E.1.9.6 (6.5.2.2) 列挙型の値を表現するための整数型

E.1.10 修飾子 (G.3.10)

E.1.10.1 (6.5.5.3) volatile 修飾子型を持つオブジェクトへのアクセス方法

E.1.11 宣言子 (G.3.11)

E.1.11.1 (6.5.4) 算術演算、構造体、または共用体の型が修正可能な宣言子の最大数

E.1.12 文 (G.3.12)

E.1.12.1 (6.6.4.2) switch 文中の case 値の最大個数

E.1.13 プリプロセッサ指令 (G.3.13)

E.1.13.1 (6.8.1) 条件付きのインクルードを制御する定数式のシングルキャラクタ文字定数の値は、実行文字セット中の同一の文字定数の値に一致するか

E.1.13.2 (6.8.1) そのような文字定数は負の値をとり得るか

E.1.13.3 (6.8.2) インクルード可能なソースファイルの位置を知る方法

E.1.13.4 (6.8.2) インクルード可能なソースファイルの引用符付きの名前のサポート

E.1.13.5 (6.8.2) ソースファイルの文字シーケンスの配置

E.1.13.6 (6.8.6) 認識された #pragma 命令の動作

E.1.13.7 (6.8.8) 翻訳の日付と時間がわからないときの __DATE____TIME__ の定義

E.1.14 ライブラリ関数 (G.3.14)

E.1.14.1 (7.1.6) マクロの NULL を拡張した null ポインタ定数

E.1.14.2 (7.2) assert 関数によって出力される診断と assert 関数の終了動作

E.1.14.3 (7.3.1) isalnumisalphaiscntrlislowerisprint、および isupper 関数によってテストされる文字セット

E.1.14.4 (7.5.1) ドメインエラーの数値演算関数によって返される値

E.1.14.5 (7.5.1) アンダーフローエラーの場合に、数値演算関数が整数式 errno をマクロ ERANGE の値に設定するかどうか

E.1.14.6 (7.5.6.4) fmod 関数の第 2 引数が 0 を持つ場合に、ドメインエラーとなるか、0 が返されるか

E.1.14.7 (7.7.1.1) signal 関数に対するシグナルの設定

E.1.14.8 (7.7.1.1) signal 関数によって認識される各 signal のデフォルトの取扱い、およびプログラムのスタートアップ時における取扱い

E.1.14.9 (7.7.1.1) シグナルハンドラを呼び出す前に signal(sig, SIG_DFL); 相当のものが実行されない場合は、どのシグナルがブロックされるか

E.1.14.10 (7.7.1.1) SIGILL 関数に指定されたハンドラにより SIGILL シグナルが受信された場合は、デフォルト処理はリセットされるか

E.1.14.11 (7.9.2) テキストストリームの最終行で、改行文字による終了を必要とするか

E.1.14.12 (7.9.2) 改行文字の直前でテキストストリームに書き出されたスペース文字は読み込みの際に表示されるか

E.1.14.13 (7.9.2) バイナリストリームに書かれたデータに追加することのできる null 文字の数

E.1.14.14 (7.9.3) アペンドモードのストリームのファイル位置指示子は、最初にファイルの始まりと終わりのどちらに置かれるか

E.1.14.15 (7.9.3) テキストストリームへの書き込みを行うと、書き込み点以降の関連ファイルが切り捨てられるか

E.1.14.16 (7.9.3) ファイルのバッファリングの特徴

E.1.14.17 (7.9.3) ゼロ長ファイルは実際に存在するか

E.1.14.18 (7.9.3) 有効なファイル名を作成するための規則

E.1.14.19 (7.9.3) 同一のファイルを何回も開くことができるか

E.1.14.20 (7.9.4.1) 開いたファイルへの remove 関数の効果

E.1.14.21 (7.9.4.2) rename 関数を呼び出す前に新しい名前を持つファイルがあった場合、そのファイルはどうなるか

E.1.14.22 (7.9.6.1) fprintf 関数における %p 変換の出力

E.1.14.23 (7.9.6.2) fscanf 関数における %p 変換の入力

E.1.14.24 (7.9.6.2) fscanf 関数における %[ 変換のための走査リストで最初の文字でも最後の文字でもないハイフン文字 - の解釈

E.1.15 ロケール固有の動作 (G.4)

E.1.15.1 (7.12.1) 現地時間帯と夏時間の設定

E.1.15.2 (7.12.2.1) clock 関数の経過時間

E.1.15.3 (5.2.1) 必要なメンバー以外の実行文字セットの内容

E.1.15.4 (5.2.2) 印刷方向

E.1.15.5 (7.1.1) 10 進小数点を表わす文字

E.1.15.6 (7.3) 処理系ごとに定義される文字テストおよびケース配置関数の項目

E.1.15.7 (7.11.4.4) 実行文字セットの照合シーケンス

E.1.15.8 (7.12.3.5) 時間と日付の書式

F.  ISO C データ表現

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

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

索引

付録 E

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

『Programming Language - C (ISO/IEC 9899:1999)』規格には、C 言語で記述されたプログラムの構文と解釈が規定されています。この付録では、それらの動作を詳しく説明します。各項は ISO/IEC 9899:1990 規格そのものと簡単に比較できるようになっています。日本の対応規格は、JIS X 3010 - 1993 です。