C中字符串常量和字符串文字有什么区别?

时间:2010-10-12 03:19:08

标签: c string-literals string-constant

普通C中的字符串常量字符串文字之间有什么区别?

这个问题与另一个问题类似:What's the difference between a string constant and a string literal? ...除了一个是关于Objective-C(使用NSString)而不是C.

5 个答案:

答案 0 :(得分:6)

C99 Draft from 2007中,使用 sting literal 这个词。术语字符串常量根本不会出现在草稿中。

我在讨论“foo”时发现 string literal 是一个很好的术语选择(就像42是一个文字数字,“foo”是一个文字字符串)。

答案 1 :(得分:2)

他们是同一个人。仅仅是您使用哪个词来描述字符串的偏好。

答案 2 :(得分:1)

第二个单词的拼写用于描述相同的想法?

我认为它们是同一个东西 - 同一构造的替代术语。

答案 3 :(得分:0)

const char * strConst;
strConst = "Hello World";

在这个例子中

  • strConst是一个字符串常量。
  • "Hello World"是字符串文字,通常存储在程序的只读区域。

答案 4 :(得分:-1)

Literal 常量表示在源代码中表示固定值的符号相同。