在C语言中,以下代码中的指定是用来做什么的?
我手头上有一个编译器,告诉我
if ("" == "")
{
printf("Empty strings are equal\n");
}
我手头上有一个编译器,告诉我
""
确实等于""
。但这种相等关系是否被保证呢?
编辑:我非常清楚C语言中指针比较和字符串比较的工作原理。我的问题是,对于编译时常量空字符串,C标准是否指定了任何行为?我认为这些字符串不能保证相等,但实际上通常会相等,因为所有的常量空字符串将被内部化到同一地址。但我想知道是否有人可以提供明确的参考资料。