コードをコンパイルした後、状況に応じて、メモリの不正アクセスに関連する SEGV 信号を受信しています。ソースと、最近の変更前にコードが機能していたことを考えると。この信号を受信しているのはなぜですか?
注: Motif の型戻りの説明
TextField ウィジェットの文字列値への文字ポインタを返します。この戻り値は、XmNvalue リソースの値のコピーです。TextField ウィジェットの文字列の長さが 0 (ゼロ) の場合、空の文字列を返します。
宣言:
char *str, *str1, *str2;
以前の初期化:
str2 = XmTextFieldGetString( WIDGET_WITH_STRING );
現在の初期化:
str2[0] = "Group Definition";
例外:
(dbx) cont
dbx: warning: Resuming only t@1 to satisfy events that require
automatic single-stepping
trace: 814 if (!add_button_sensitive)
trace: 817 str = XmTextFieldGetString( region_code_text );
trace: 818 str1 = XmTextFieldGetString( region_name_text );
trace: 823 str2[0] = "Group Definition";
t@1 (l@1) signal SEGV (access to address exceeded protections) in
region_add_mod_cb at line 823 in file "region_groups.c"
823 str2[0] = "Group Definition";