
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
http://www.dab.hi-ho.ne.jp/sasa/biboroku/misc/co …
とか
http://emoken.net/blog2/item_498.html
とかを適当にいじれば出来るかと。
もっと適当で良いのなら、
コマンドラインで
grep -e '/\*.*\*/' -e '//.*$' *.cpp > log.txt
とか
http://emoken.net/blog2/item_498.html
とかを適当にいじれば出来るかと。
もっと適当で良いのなら、
コマンドラインで
grep -e '/\*.*\*/' -e '//.*$' *.cpp > log.txt
No.2
- 回答日時:
教えてくれと言われても、言われた方は
・#defineにコメントが含まれていたらどうしようか
・printfのテキスト部分にコメントではないがコメントのように見える部分が含まれていたらどうしようとか
・複数行にまたがるコメントもあるのかな
・ヘッダファイルにコメントが含まれているかもしれない
・ソースが不正でコメントの終了がない場合があるかも知れない
等々
色々と考えてしまうものです。
コメントがどのように書かれているかによってごく簡単だったり、とっても難しくなったりすると思います。
一番確実なやり方はC言語のコンパイラの構文解析に則ってコメントを抽出することだと思います。
No.1
- 回答日時:
コードまで書くつもりはありませんが……まぁ、どんな処理にすればいいのか…という提案程度なら。
1)コメントを出力するファイルをオープンする。(テキストモード・追記かな)
2)対象のソースファイルをテキストモードでオープンする。
3)コメント中判定のフラグ変数を用意し、非コメント中状態に設定する。(bool型でfalseとか)
4)ソースファイルを1行読み込む。読み込みする行がなくなったら8)へ。
5)読み込んだ行に"//"があるか検索する。
コメント中判定フラグが偽であった場合は//以降をテキストファイルに書き出し、4)へ戻る。
コメント中判定フラグが真だったらスルーして6-a)へ。
6-a)コメント中判定フラグが真なら読み込んだ行に"*/"があるか検索する。
ない場合は1行丸ごとテキストファイルに書き出し。
あった場合は"*/"の直後までテキストファイルに書き出してコメント中判定フラグを偽に設定。
"*/"の直後から"/*"があるか検索して…6-b)の後半の処理を実施。
6-b)コメント中判定フラグが偽なら読み込んだ行に"/*"があるか検索する。
ない場合は7)へ。
あった場合は"/*"の直後から"*/"を検索。
"*/"があった場合は、"/*"の直前から"*/"の直後までをテキストファイルに書き出し。"*/"の直後から"/*"を検索して同じような処理を。
"*/"がない場合は、"/*"の直前から行の最後までをテキストファイルに書き出してコメント中判定フラグを真に設定。
7)4)へ戻る。
8)対象のソースファイルをクローズ。
9)次のソースファイルをテキストモードでオープンして3)へ
オープンするソースファイルがない場合は10)へ
10)テキストファイルをクローズ。
ってな感じでしょうか。
1行に/*~*/のコメントが複数あった場合の処理とかいろいろ気をつけないとなりませんが。(6-aと6-bで軽く書いていたりはしますけどねぇ)
正規表現が使える言語使って処理した方が楽かも知れませんけどね……。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ATTファイルってどうやって開け...
-
StreamReaderで読み込んだファ...
-
[VB.NET] 処理の高速化を行いた...
-
C#で大容量ファイルの一部編集
-
フォームファイル(.frm)を開...
-
VB(VBA)で、バイナリデータを使...
-
VBSでテキストファイルの2行目...
-
accessでクエリをExcelにエクス...
-
CSVファイルの時刻の形式について
-
Thunderbird 受信メールからの...
-
iTextでPDFを表示させたら日本...
-
VBAで、JPG写真の撮影日時を読...
-
Eclipseで検索ができなくなった
-
VB2008 iniファイルの全セクシ...
-
0バイトのテキストファイル
-
HTMLテキストリンクでExcelファ...
-
コマンドプロンプトのテキスト...
-
【VBA】印刷マクロのループ処理...
-
ファイル作成日時と更新日時を...
-
[transformNode]メソッドについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ATTファイルってどうやって開け...
-
テキストファイルの一部分を抽...
-
WORDのVBAで差し込み印刷時、デ...
-
[VB.NET] 処理の高速化を行いた...
-
テキストファイル固定長データ...
-
Excel VBAが徐々に遅くなる
-
ファイル変換
-
c言語での単語数のカウント
-
パイソンでのテキストデータの...
-
ストリームについて。
-
「VB.net」DataGridViewへの選...
-
テキストファイル内の文字の有...
-
最新日付のテキストファイルを...
-
C言語
-
バイナリファイルの区別
-
Javaのプロパティファイルの文...
-
VB(VBA)で、バイナリデータを使...
-
C言語でテキストファイルをバイ...
-
EXCEL VBAでカンマ区切りテキス...
-
C言語のソースからコメントを抜...
おすすめ情報