日本-日本語
日本HPホーム 製品 & サービス OpenVMS製品情報
≫  お問い合わせ


OpenVMS マニュアル


 

OpenVMS ドキュメント
ライブラリ

タイトルページ
目次
まえがき
第 1 部:デバッガ概要
第 1 章:デバッガ概要
第 2 部:コマンド・インタフェース
第 2 章:デバッガの起動
第 3 章:プログラム実行の制御とモニタ
第 4 章:プログラム・データの検査と操作
第 5 章:プログラム内シンボルへのアクセス制御
第 6 章:ソース・コードの表示の制御
第 7 章:画面モード
第 3 部:DECwindows インタフェース
第 8 章:DECwindows Motifインタフェースの概要
第 9 章:デバッグ・セッションの開始と終了
第 10 章:デバッガの使用方法
第 4 部:PC クライアント・インタフェース
第 11 章:デバッガの PC クライアント/サーバ・インタフェースの概要
第 5 部:高度なトピック
第 12 章:ヒープ・アナライザの使用
第 13 章:その他の便利な機能
第 14 章:特殊なデバッグ
第 15 章:マルチプロセス・プログラムのデバッグ
第 16 章:タスキング・プログラムのデバッグ
第 6 部:付録
付録 A :定義済みのキー機能
付録 B :組み込みシンボルと論理名
付録 C :各言語に対するデバッガ・サポートの要約
付録 D :EIGHTQUEENS.C
索引
PDF
OpenVMS ホーム

HP OpenVMS
デバッガ説明書


目次 索引



サポートされている,BASIC の言語式とアドレス式の構造を次に示します。

シンボル 構造
( ) 添字指定
:: レコードの構成要素の選択



C.4.3 データ型

サポートされている BASIC のデータ型を次に示します。

BASIC のデータ型 VMS のデータ型名
BYTE バイト整数(B)
WORD ワード整数(W)
LONG ロングワード整数(L)
SINGLE F 浮動小数点数(F)
DOUBLE D 浮動小数点数(D)
GFLOAT G 浮動小数点数(G)
DECIMAL パック 10 進数(P)
STRING ASCII テキスト(T)
RFA (なし)
RECORD (なし)
配列 (なし)



C.4.4 デバッグのためのコンパイル

BASIC 環境でプログラムに変更を加えてから,そのプログラムを保存したり置換したりしないまま,/DEBUG 修飾子を使用してコンパイルしようとすると, "Unsaved changes,no source line debugging available" ( 変更を保存していないのでデバッグにソース行を使用できません ) という BASIC のエラーが通知されます。この問題を防ぐには,プログラムを保存または置換してから, /DEBUG 修飾子を使用してプログラムを再コンパイルしてください。

C.4.5 定数

[radix]"numeric-string"[type] という形式 ( "12.34"GFLOAT など ) や,n% という形式 ( 整数 25 の 25% など ) の BASIC の定数は,デバッガの式ではサポートされていません。

C.4.6 式の評価

BASIC 言語でオーバフローする式であっても,デバッガが評価する場合に必ずオーバフローするとはかぎりません。BASIC の規則でオーバフローになる場合でも,デバッガは数値的に正しい結果を計算しようとします。この違いは,10 進数を計算するときに特に影響があります。

C.4.7 行番号

デバッグ・セッションではソース・コード・ディスプレイに表示される連続した行番号を参照しますが,この行番号を生成するのはコンパイラです。BASIC プログラムに他のファイルからコードを取り込んだり,付加したりする場合,取り込まれたコードの行にもコンパイラによって順番に行番号が付けられます。

C.4.8 ルーチンへのステップ

STEP/INTO コマンドは,外部関数をチェックするのに便利です。しかし,内部サブルーチンや DEF で実行を停止するのにこのコマンドを使用すると,デバッガは最初に実行時ライブラリ (RTL) のルーチン内の命令をステップ実行するので,有用な情報は何も得られません。次の例では,Print_routine を呼び出す 8 行目で実行が一時停止されます。

    ...
->  8  GOSUB Print_routine 
    9  STOP 
    ...
   20  Print_routine: 
   21    IF Competition = Done 
   22      THEN PRINT "The winning ticket is #";Winning_ticket 
   23      ELSE PRINT "The game goes on." 
   24    END IF 
   25  RETURN 

STEP/INTO コマンドを実行すると,デバッガは適切な RTL コード内の命令をステップ実行して,表示のために使用できるソース行がないことをユーザに伝えてきます。一方,STEP コマンドだけを使用すると,デバッガは Print_routine への呼び出しを通り越して,直接ソース行の 9 行目に進みます。サブルーチンまたは DEF 関数のソース・コードをチェックするには,ルーチンのラベルにブレークポイントを設定してください。たとえば,SET BREAK PRINT_ROUTINE コマンドを入力します。こうすると,正確にルーチンの開始地点この例では 20 行目で実行を一時停止してから,コード内の命令を直接ステップ実行することができます。

C.4.9 シンボル参照

単一の BASIC プログラム内の変数名とラベル名は,すべて固有のものでなければなりません。固有でない場合,デバッガはシンボルのあいまいさを解消できません。

C.5 BLISS

次の各サブトピックでは,デバッガによる BLISS のサポートについて説明します。

C.5.1 言語式の演算子

言語式でサポートされている BLISS の演算子を次に示します。

種類 シンボル 機能
接頭辞 . 間接参照
接頭辞 + 単項正符号
接頭辞 - 単項負符号(否定)
挿入辞 + 加算
挿入辞 - 減算
挿入辞 * 乗算
挿入辞 / 除算
挿入辞 MOD 剰余
挿入辞 ^ 左シフト
挿入辞 EQL 等値
挿入辞 EQLU 等値
挿入辞 EQLA 等値
挿入辞 NEQ 不等
挿入辞 NEQU 不等
挿入辞 NEQA 不等
挿入辞 GTR 大なり
挿入辞 GTRU 大なり符号なし
挿入辞 GTRA 大なり符号なし
挿入辞 GEQ 以上
挿入辞 GEQU 以上符号なし
挿入辞 GEQA 以上符号なし
挿入辞 LSS 小なり
挿入辞 LSSU 小なり符号なし
挿入辞 LSSA 小なり符号なし
挿入辞 LEQ 以下
挿入辞 LEQU 以下符号なし
挿入辞 LEQA 以下符号なし
接頭辞 NOT ビット単位のNOT
挿入辞 AND ビット単位のAND
挿入辞 OR ビット単位のOR
挿入辞 XOR ビット単位の排他的OR
挿入辞 EQV ビット単位の同値



C.5.2 言語式とアドレス式の構造

サポートされている,BLISS の言語式とアドレス式の構造を次に示します。

シンボル 構造
[ ] 添字指定
[fldname] フィールドの選択
<p,s,e> ビット・フィールドの選択



C.5.3 データ型

サポートされている BLISS のデータ型を次に示します。

BLISSのデータ型 VMS のデータ型名
BYTE バイト整数(B)
WORD ワード整数(W)
LONG ロングワード整数(L)
QUAD (Alpha および Integrity 固有) クォドワード(Q)
BYTE UNSIGNED バイト符号なし(BU)
WORD UNSIGNED ワード符号なし(WU)
LONG UNSIGNED ロングワード符号なし(LU)
QUAD UNSIGNED (Alpha および Integrity 固有) クォドワード符号なし(QU)
VECTOR (なし)
BITVECTOR (なし)
BLOCK (なし)
BLOCKVECTOR (なし)
REF VECTOR (なし)
REF BITVECTOR (なし)
REF BLOCK (なし)
REF BLOCKVECTOR (なし)



C.6 C

次の各サブトピックでは,デバッガによる C のサポートについて説明します。

C.6.1 言語式の演算子

言語式でサポートされている C の演算子を次に示します。

種類 シンボル 機能
接頭辞 * 間接参照
接頭辞 & アドレス
接頭辞 sizeof サイズ
接頭辞 - 単項負符号(否定)
挿入辞 + 加算
挿入辞 - 減算
挿入辞 * 乗算
挿入辞 / 除算
挿入辞 % 剰余
挿入辞 << 左シフト
挿入辞 >> 右シフト
挿入辞 == 等値
挿入辞 != 不等
挿入辞 > 大なり
挿入辞 >= 以上
挿入辞 < 小なり
挿入辞 <= 以下
接頭辞 ~ (チルド) ビット単位のNOT
挿入辞 & ビット単位のAND
挿入辞 | ビット単位のOR
挿入辞 ^ ビット単位の排他的OR
接頭辞 ! 論理否定
挿入辞 && 論理積
挿入辞 || 論理和

C では感嘆符(!) は演算子なので,感嘆符をコメント区切り文字として使用することはできません。言語が C に設定されている場合は,感嘆符の代わりに /* がコメント区切り文字として受け入れられます。現在の行の終端までがコメントになります。対応する */ は不要であり,認識もされません。しかし,デバッガのログ・ファイルをデバッガの入力として使用できるようにするため,1 行の中で空白以外の最初の文字が感嘆符 (!) である場合は,デバッガはその感嘆符をコメント区切り文字として認識します。

C の言語式とデバッガのアドレス式の両方で,デバッガは接頭辞のアスタリスク (*) を間接参照演算子として受け入れます。言語が C に設定されているときのアドレス式では,接頭辞"*" は接頭辞 "." または "@" と同義です。

デバッガは,C または他のどの言語でも代入演算子は何もサポートしません。これは,デバッグされるプログラムに予期しない変更が加えられるのを防ぐためです。したがって,=,+=,--=,++, -- などの演算子は認識されません。メモリ記憶位置の内容を変更するには, DEPOSIT コマンドを使用して明示的に変更しなければなりません。

C.6.2 言語式とアドレス式の構造

サポートされている,C の言語式とアドレス式の構造を次に示します。

シンボル 構造
[ ] 添字指定
.(ピリオド) 構造体構成要素の選択
-> ポインタの間接参照



C.6.3 データ型

サポートされている C のデータ型を次に示します。

C のデータ型 VMS のデータ型名
__int64 (Alpha および Integrity 固有) クォドワード(Q)
unsigned__int64 (Alpha 固有) クォドワード符号なし(QU)
__int32 (Alpha および Integrity 固有) ロングワード整数(L)
unsigned__int32 (Alpha および Integrity 固有) ロングワード符号なし(LU)
int ロングワード整数(L)
unsigned int ロングワード符号なし(LU)
__int16 (Alpha および Integrity 固有) ワード整数(W)
unsigned__int16 (Alpha および Integrity 固有) ワード符号なし(WU)
short int ワード整数(W)
unsigned short int ワード符号なし(WU)
char バイト整数(B)
unsigned char バイト符号なし(BU)
float F 浮動小数点数(F)
__f_float (Alpha および Integrity 固有) F 浮動小数点数(F)
double D 浮動小数点数(D)
double G 浮動小数点数(G)
__g_float (Alpha および Integrity 固有) G 浮動小数点数(G)
float (Alpha および Integrity 固有) IEEE S 浮動小数点数(FS)
__s_float (Alpha および Integrity 固有) IEEE S 浮動小数点数(FS)
double (Alpha および Integrity 固有) IEEE T 浮動小数点数(FT)
__t_float (Alpha および Integrity 固有) IEEE T 浮動小数点数(FT)
enum (なし)
struct (なし)
union (なし)
ポインタ型 (なし)
配列型 (なし)

++Alpha 固有です。

float 型の浮動小数点数は,コンパイラのスイッチによって, F 浮動小数点数または IEEE S 浮動小数点数のどちらかで表現されます。

double 型の浮動小数点数は,コンパイラのスイッチによって, IEEE T 浮動小数点数,D 浮動小数点数,またはG 浮動小数点数のどちらかで表現されます。


目次 索引

© 2012 Hewlett-Packard Development Company, L.P.