当前位置: 首页 > 知识库问答 >
问题:

名为“unix”的变量具有值1[重复]

缪宪
2023-03-14

如果我写这个程序-

main(){printf("%d",unix);}

这将正确编译,并打印1,尽管我预料会出现'UNIX undarnection'或类似错误。但如果我改成这样-

main(){printf("%d",blah);}
error: 'blah' undeclared (first use in this function)

正如所料。

那么,为什么unix不生成错误,为什么它的值是1?我试着谷歌搜索,但什么也没找到。

共有1个答案

汪阿苏
2023-03-14
#undef unix
int main(void)
{printf("%d\n",unix);
return 0;
}

编译失败(即使在#include 之后也是如此,因此,它必须是某个内置的预处理器~#define编译器输出:

unix.c: In function ‘main’:
unix.c:4:16: error: ‘unix’ undeclared (first use in this function)
 {printf("%d\n",unix);
 类似资料:
  • 问题内容: 我想这样创建一个别名: 因此,如果有人输入: 它只会显示目录中的最后10个文件。 但似乎对我不起作用。有什么办法可以在bash中引入变量。 问题答案: 我会为此创建一个函数,而不是别名,然后将其导出,如下所示: 注意切换到:它告诉您您正在导出函数。把它放进去,你就很好了。

  • 问题内容: 有没有一种方法可以在变量中传递值列表,并在IN()语句中使用它来对照传入的值列表检查字段? 我唯一能想到的就是这样: 谢谢。 问题答案: TD14支持名为STRTOK_SPLIT_TO_TABLE的漂亮表函数:

  • 问题内容: 我正在学习Java,并且我知道您不能将内部范围内声明的变量命名为与外部范围内声明的变量相同的名称,如下所示 但是,我发现以下行为不合法 这不是两次声明的变量吗? 问题答案: 这不是两次声明的变量吗? 不它不是。因为它们都在不同的范围内。函数外部具有 类级别范围, 而 函数内部具有 方法/函数级别范围 。 具有不同作用域的两个变量具有相同的名称是合法的。 请务必阅读第6.3节。JLS 声

  • 问题内容: 我继承了一些Python代码,这些代码用于创建巨大的表(最多19列,每行5000行)。花了 九秒钟 时间在屏幕上绘制了表格。我注意到每一行都是使用以下代码添加的: 字符串在哪里。 我将其更改为: 我注意到桌子现在出现了 六秒 。 然后我将其更改为: 基于这些Python性能提示(仍为6秒)。 由于调用了大约5000次,因此突出了性能问题。但是为什么会有如此大的差异呢?为什么编译器没有在

  • 问题内容: 这是我写的三个类: Tester类的main方法的输出为: 为什么sx返回0而不是1?由于不是Rectangle变量的当前实例,并且该类也声明了相同的实例变量,或者Rectangle类中的变量没有像对getX()一样覆盖Shape类中的先前公共x变量。矩形类中的方法因此返回1? 同样作为一般规则,超类仅在其子类中也声明了其子类方法时才可以访问其子类的实现?这是因为编译器会看到“ Sha

  • 我正在为学校制作一种API,用于定制XML编写器。我有: 我需要帮助的是: 我想创建一个与数据[i]同名的元素。 我使用的是dom4jxml。顺便说一句,放在这个罐子里。 我听说过一种叫做hashmap的方法,如果这是正确的方法,请有人解释一下如何使用它。