为什么要对char进行分隔?基于C

Sel*_*rio 4 c c# c++ char literals

我前几天在C#中编写了一些代码,这让我思考.如果char文字只能有1个char(或分隔符),那么为什么我们需要结束分隔符?

例如,目前我们需要写:

char character = 's';
Run Code Online (Sandbox Code Playgroud)

并且没有任何情况可以使用(显然):

char character = 'sa';
Run Code Online (Sandbox Code Playgroud)

那么为什么我们必须把结束'而不是暗示呢?例如:

char character = 's;
char anotherCharacter = '\';
Run Code Online (Sandbox Code Playgroud)

可读性只会受到影响,因为我们习惯了当前的标准(不一定是因为这种方式不太可读).

Cur*_*urt 7

  1. 这是一个惯例
  2. 在这个unicode世界中,字符不一定表示在一个字符中
  3. 控制/转义序列可以长于一个字符(例如'\ _0x1a')