Kernighan と Ritchie C のリファレンスを何年も持っていませんでしたが、利用できない文字を入力する方法について説明したページがそこにあったことを覚えています。(昔は、一部のキーボードには "、~ などの文字がありませんでした。)
わかりやすくするために、例を挙げましょう。文字列で引用符を取得する方法を探しているのではなく、これを置き換えたい:
printf("foo");
これとともに:
printf([alternate sequence]foo[alternate sequence]);
興味深いことに、私は C/C++ コードの生成を含む自動化されたプロセスを持っていますが、(クローズド ソースの) 商用ツールにはデータ ストリーム内の引用符が含まれていません。彼ら。
編集:
うわー、私はそのような重い反応を期待していませんでした。これは、私のプロセスをもう少し詳しく説明する価値があるかもしれません。私は自動化されたビルド システムを行っています。つまり、コンパイルしているコードの変更に関しては、一定の制限があります。今のところ、文字列、スペース、およびすべてをプリプロセッサの定義に入れる必要があるという前提で生活する必要があります。私はすでに「PreprocessorDefinition」の道を進んでいます。これにより、通常のフォールバックが残りました。動作環境で文字列を定義し、そこからプロジェクト ファイルに定義を設定します。
Preprocessor Definitions WIN32;_DEBUG;THINGIE=$(THINGIE)
ビルド自動化スクリプトで次のようなことを行うことで、トリグラフを使用して /D でビルドに渡されたものすべてで MSVC の引用符の削除を回避できることを願っていました。
ENV['THINGIE'] = "??''Yodeling Monkey Nuggets??''"
run_msbuild_command
プランCの時期だと思います。