#author("2019-12-02T20:31:50+09:00","","") #author("2019-12-02T20:32:12+09:00","","") #navi(../) * C#でよくある文字列の先頭の@について [#n49de7d8] C#のプログラムを見ると以下のようなString変数に文字列を代入するとき、~ アットマーク(@)が先頭についていることが多いですよね。~ これは、エスケープ文字(\)を入力しなくても良いという利点がありますが、副作用?もあります。~ 以下にサンプルコードと実行結果を紹介します。 //#htmlinsert(windev-top.html) #contents * @をつけた文字列と@が無い文字列 [#kee03449] 以下に@があるHello world文字列と@が無いHello world文字列を定義し、~ メッセージボックスに文字列を表示します。 using System; using System.Windows.Forms; class Program { static void Main(string[] args) { String s1 = @"Hello\nworld\n"; String s2 = "Hello\nworld\n"; MessageBox.Show(s1, "s1"); MessageBox.Show(s2, "s2"); } } ** 実行結果 [#sddf78d4] 以下のキャプチャの通り、@をつけると、\nが改行と認識されずそのまま表示されます。~ @がない場合は、\nが改行として認識され表示されます。 |BGCOLOR(NAVY):COLOR(WHITE):''@あり''|BGCOLOR(NAVY):COLOR(WHITE):''@なし''| |&ref(01.png);|&ref(02.png);| 以上、C#で文字列定義の先頭に@が付いている場合の動作説明でした。 //#htmlinsert(windev-btm.html)