質問するログイン新規登録

回答編集履歴

1

追記

2018/10/03 06:10

投稿

ttyp03
ttyp03

スコア17002

answer CHANGED
@@ -37,4 +37,22 @@
37
37
  7行目にXがついていてこの行は実行しないというのはわかりますが、お望みの行自体を削除することはできないようです。
38
38
  またマクロも展開して出力されるので、9行目のNUMを999に置き換えられてしまい、コードを解読するという意味ではわかりづらいものになってしまいます。
39
39
  やはりエディタで無効部分は色を薄くしたり折りたたむなどするほうが現実的かと思います。
40
- 上記はSHコンパイラの例ですので、RXコンパイラでどうなるかはわかりません。
40
+ 上記はSHコンパイラの例ですので、RXコンパイラでどうなるかはわかりません。
41
+
42
+ もう少し見てみたら、プリプロセッサが展開したものを出力することができました。
43
+ こんなのになります。
44
+ ```c
45
+ #line 1 "test.c"
46
+
47
+
48
+
49
+ void test(void)
50
+ {
51
+
52
+
53
+
54
+ printf("%d\n", 999);
55
+ }
56
+ ```
57
+ お望みどおり実行されない行は削除されましたが、NUMは999に置き換えられてしまいますね。当然ですが。
58
+ これでよしとするかどうかはご判断ください。