
C言語でダブルクォートで囲まれた文字列内で使われる、「\」で始まるエスケープシーケンスがありますよね。例えば、
「\n」 ⇒ 改行
「\t」 ⇒ タブ
「\"」 ⇒ ダブルクォート
「\\」 ⇒ バックスラッシュ
などですが、C言語のリフェレンスを見ると「\'」(シングルクォート)や「\?」(クエスチョンマーク)なども載っていました。でもこれらの文字は、実際はエスケープシーケンスを使わなくても、ちゃんとコンパイルされ表示もされます。
「'」や「?」をC言語の文字列内で使うには、公式には「\」が必要なんでしょうか?

No.3ベストアンサー
- 回答日時:
\? のほうは、今となっては悪名高い、「トライグラフ」に関連したものです。
Cでよく使われる記号で、{ } | # \ などの記号は、実は、各国で文字コードが結構ばらばらです。(バックスラッシュが、JIS では \ になってしまうのは、我々にはなじみが深いですが)
さて、それを避けるために、?? + 1文字で、上記の文字を代用することができます。
具体的には、URL をどうぞ。
今でもこの仕様は有効なので、??なんとか とすると、訳のわからないエラーに見舞われることがあります。
(gcc はデフォルトで OFF らしい)
これの対策で、明示的に ?? と、2連発したいときなど、 \?\? が安全なのかもしれません。
参考URL:http://rec.ncos.co.jp/cgi-bin/e000.cgi?64
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- C言語・C++・C# C言語で 英文字のみからなる文字列、”Radar”、”WasItACatISaw”、”a”、””(空 5 2022/12/20 15:17
- C言語・C++・C# C言語の質問です。 以下の命令を実行するプログラムを作りました ①文字列aとbの長さを表示 ②aとb 1 2022/04/29 15:35
- C言語・C++・C# いまc言語の標準ライブラリ文字列を勉強しているのですがいまいちわかりません。 strcmpとmemc 5 2023/07/04 15:34
- C言語・C++・C# 【C言語】全角文字の配列を、全角のまま1文字ずつ出力する方法 4 2023/05/09 15:08
- C言語・C++・C# C#の問題です。 文字列型の配列 s[100] にキーボードから入力された100文字以内の文字列(単 2 2022/06/22 15:18
- C言語・C++・C# c言語 int temp = 0; if(isdigit(arr[i])){ temp=arr[i] 2 2022/03/27 01:44
- C言語・C++・C# C言語の質問です、プログラミング初心者です このような文字列があった場合 "abcdef☆ghijk 4 2022/11/22 10:56
- HTML・CSS リンクバナーのHTMLタグ。画像を変えたり、設置位置を変えるとバナー貼付け側はどう見える? 2 2023/02/01 12:01
- Excel(エクセル) Excel 複数列のある文字を優先して1列に表示したいです 2 2022/12/03 12:07
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プログラミングについて。 1つ...
-
gccを行ってもexeファイルが生...
-
c言語
-
visual studio 2022でのC#プロ...
-
C# DatagridviewにExcelシート...
-
mallocについて
-
C言語って古いですか?
-
C言語関数違いについて。
-
逆コンパイルと逆アセンブルの...
-
プログラムの実行時に'<'でリダ...
-
パソコン
-
CPUが16bitでも32bitOSでコンパ...
-
Python、プログラミングについ...
-
だれがとけるの?
-
バッチファイルで以下のような...
-
Notepad++の関数リスト表示の変...
-
VisualStudio2022でC言語プログ...
-
License='MIT' ってなんでmitな...
-
C言語 ストリームについて。
-
c言語でイベントフラグを使った...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
c言語
-
gccを行ってもexeファイルが生...
-
大量のデータを読み込んで表示...
-
visual studio 2022でのC#プロ...
-
C++でデスクトップGUIアプリ開...
-
【C言語】全角文字の配列を、全...
-
Windows Formアプリからコンソ...
-
VisualStudio2022でC言語プログ...
-
C#でログファイルにファイルパ...
-
C#でTreeViewのCheckBoxのサイ...
-
c#のTLS1.2での通信について
-
VisualStudioでC++クラスを追加...
-
C言語について。
-
int16_t の _t は何?
-
プログラマー達は何故、プログ...
-
逆コンパイルと逆アセンブルの...
-
C言語の関数のextern宣言
-
c言語でイベントフラグを使った...
-
C言語 関数、変数の宣言について
-
[C言語]fputsとfprintfの違い
おすすめ情報