掲示板利用宣言

 次のフォームをすべてチェックしてからご利用ください。

 私は

 題名と投稿者名は具体的に書きます。
 課題の丸投げはしません。
 ソースの添付は「HTML変換ツール」で字下げします。
 返信の引用は最小限にします。
 環境(OSとコンパイラ)や症状は具体的に詳しく書きます。
 返信の付いた投稿は削除しません。
 マルチポスト(多重投稿)はしません。

掲示板2

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧

No.29190

エラーログに行内容を出力する方法について
投稿者---GK(2006/12/08 10:22:21)


純粋なCでは無いかもしれませんが質問させていただきます。
現在、bool値を返す関数などでエラーが発生しFalseが返ってきた時、ファイルへエラーログを残そうと、マクロと駆使して試行錯誤しています。

ログ内容としては次のものを残したいのですが、「3.エラーの発生した行内容」のとり方が分からずに困っています。

1.エラーの発生したファイル名 ()
2.エラーの発生した行番号 ()
3.エラーの発生した行内容 ()
4.エラーの意味 ()

マクロとその使用例を示します。
#define E( a,b ) {int x=(a); if(!x){ LogWrite(__FILE__,__LINE__,"a",b) } }
E( test() , "予期せぬエラー" );

これでうまくいくと思ったのですが、よく考えてみると、もし test関数に文字列の引数がついた場合等、ダブルクオーテーションを使用すると、展開されたコードが壊れてしまいうまくいきません。

この問題を何とか解決する方法はないのでしょうか。どなたかよろしくお願いします。


この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:エラーログに行内容を出力する方法について 29191 たかぎ 2006/12/08 11:06:22


No.29191

Re:エラーログに行内容を出力する方法について
投稿者---たかぎ(2006/12/08 11:06:22)
http://takagi.in/


>#define E( a,b ) {int x=(a); if(!x){ LogWrite(__FILE__,__LINE__,#a,b) } }

でよいのでは?



この投稿にコメントする

削除パスワード

No.29192

Re:エラーログに行内容を出力する方法について
投稿者---GK(2006/12/08 11:30:10)


おおお!そんなことが可能なんですか。勉強不足ですね…orz
おかげさまでうまくいきました。どうもありがとうございます。m(_ _)m


この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧