以下は蛇足情報につき、解決済みチェックはつけたままにしておきます。
■No76369 (bubu501 さん) に返信
> C#初心者です。
言語名は「C#」であって「C#」では無かったりします。
国内においては、日本工業規格 JIS X 3015 "プログラミング言語C#" の
序文 6 [頭字語及び略語] の項において、
》 C#は,“しーしゃーぷ”と発音する。
》 C#は,LATIN CAPITAL LETTER C (U+0043)の次に NUMBER SIGN # (U+0023)を書く。
と明記されています。
また、上記文書の基となった ECMA-334 "C# Language Specification" や、対を成す
ISO/IEC 23270:2006 "Information technology -- Programming languages -- C#" でも、
JIS 規格同様の Introduction 6. [Acronyms and abbreviations] の項において、
》 The name C# is pronounced “C Sharp”.
》 The name C# is written as the LATIN CAPITAL LETTER C (U+0043) followed by the NUMBER SIGN # (U+0023).
と定義されています。
ちなみに
「C」は 'FULLWIDTH LATIN CAPITAL LETTER C' (U+FF23)
「#」は 'FULLWIDTH NUMBER SIGN' (U+FF03)
「♯」は 'MUSIC SHARP SIGN' (U+266F)
です。
■No76370 (bubu501 さん) に返信
> C#は string str = "\"" ;
> という書き方があるのですね。失礼しました。
もしくは、
string str = @""""; // @"〜〜〜" による逐語的文字列リテラル
と書くこともできます。
「"」の一文字を表すために、このようないろいろな書き方があります。
textBox1.Text = @""""; // @"〜〜" 形式の逐語的文字列リテラル内では、「""」と連記します。
textBox2.Text = "\""; // 文字列リテラル内では、「\"」とエスケープ表記します。
textBox3.Text = "\u0022"; // 「\u + 4桁の16進数」による Unicodeエスケープシーケンス表記です。
// サロゲートペアの Unicode 文字の場合は、「\U + 8桁の16進数」です。
textBox4.Text = "\x22"; // 「\x + 可変長の16進数」による Unicodeエスケープシーケンス表記です。
もしも、「"C:\Program Files\"」という文字列なら、こんな感じです。
// 逐次的文字列リテラル。ファイルパスや改行入り文字列では、よく使われる記述です。
textBox1.Text = @"""C:\Program Files\""";
// 通常文字列リテラル。今回使用されたのはこのパターンですね。
textBox2.Text = "\"C:\\Program Files\\\"";
// Unicode エスケープ。あまり見かけない表現ですが、外国語の文字表現などに役立ちます。
textBox3.Text = "\u0022C:\u005cProgram Files\u005c\u0022";
// 可変長 Unicode エスケープ。char リテラルなら良いですが、string リテラルでは注意が必要です。
textBox4.Text = "\x22" + "C:\x5cProgram Files\x5c\x22";
// 下記は NG なので注意してください。先頭文字が "\u02C" と誤解されてしまいます。
// textBox4.Text = "\x22C:\x5cProgram Files\x5c\x22";
// 各種エスケープ表記の混在も可能です
textBox5.Text = "\"C:\\Program Files\u005c\x22";
https://msdn.microsoft.com/ja-jp/library/aa691090.aspx
https://msdn.microsoft.com/ja-jp/library/362314fe.aspx
|