Max*_*ers 7 c binary encoding character
我的程序员的本能会说c中的字符常量(例如:'x')是使用编译它的机器上的机器字符集编码的.但是,以下内容来自"C编程语言:ANSI C版"
"字符常量是用单引号括起来的一个或多个字符的序列,如'x'.只有一个字符的字符常量的值是执行时机器字符集中字符集的数值."
强调最后3个字.
任何人都可以解释为什么他们会说"在执行时".当然,字符值是在编译的二进制文件(或ELF,A.OUT ......)中编码的?
我在想,但无法对此提出任何合理的解释,肯定K&R知道他们在做什么!
Bo *_*son 2
您必须告诉编译器您将在哪个系统上运行该程序。然后它将为字符选择正确的编码。
当然,默认是在与运行编译器的系统类似的系统上运行。在这种情况下,编译时和运行时字符集将相同。
归档时间:
12 年,10 月 前
查看次数:
262 次
最近记录: