问题标签 [gcc-warning]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
316 浏览

c - 检测到堆栈溢出时强制 gcc 编译

我如何强制 gcc 编译一个程序,在该程序中我声明一个比我的内存大的无符号整数数组 - 没有得到警告警告:“表达式中的整数溢出”?

例如。我有 8gb 的内存,我想声明一个 8.5gb 的数组。

编辑:

谢谢大家,我发现问题不在于数据类型,而在于一些预处理器。我花了很长时间。:) 我写

显然编译器不喜欢那样。

0 投票
4 回答
3797 浏览

c - 你如何从位域转换为指针?

我编写了以下代码,它产生了

警告:初始化使指针从整数而不进行强制转换

警告:从不同大小的整数转换为指针

来自 gcc (GCC) 4.1.1 20070105 (Red Hat 4.1.1-52)

如何让警告消失?无论我尝试过什么投射,似乎总是会出现警告。

谢谢,陈兹

0 投票
4 回答
673 浏览

c - 在 C 中定义函数之前使用函数时的隐式声明,为什么编译器无法解决这个问题?

正如标题所说,我知道是什么导致了这个错误,但我想知道为什么编译器会在这种情况下给出它。

例如:

主程序

会给出一个隐式声明警告,因为编译器会在它读取它的声明之前到达对 test1() 的调用,我可以看到这个明显的问题(不知道返回类型等),但是为什么编译器不能做一个简单的通过获取所有函数声明,然后编译删除这些错误的代码?它看起来很简单,我不相信我在其他语言中看到过类似的警告。

有谁知道在我忽略的这种情况下此警告是否有特定目的?

0 投票
6 回答
10362 浏览

gcc - 如何让 gcc 警告将错误的枚举传递给函数

gcc 似乎没有使用以下代码产生警告。我怎样才能让它产生警告?

0 投票
1 回答
5660 浏览

gcc-warning - 编译 C90 代码时在 gcc 编译器中收到警告“ISO C90 禁止可变大小数组”

我正在 gcc 中编译我的 C90 c 代码。我ISO C90 forbids variable-size array在做出类似声明时收到警告

int symbols[nc];

其中 nc 是整数,其值是从输入文件中读取的。输入文件上的值是多种多样的,所以我不能保持一个恒定的值。我怎样才能摆脱它?是否确实有必要解决此警告,或者我们可以简单地忽略它?

提前致谢。

0 投票
3 回答
735 浏览

c++ - 试图克服这 6 个 g++ 错误

这些是 g++ 发出的错误/警告,下面是相关代码。任何有关清除这些错误或阐明它们的帮助将不胜感激。谢谢!

g++ 错误:

相关代码:

gcc 错误:

相关代码:

gcc 错误:

相关代码:

gcc 错误:

相关代码:

0 投票
1 回答
175 浏览

gcc - 执行有关在 gcc 中返回值的检查

我正在使用 gcc 编译一些 C/C++ 文件。

我今天注意到一个导致我的应用程序崩溃的错误。这是因为我的函数没有返回任何值(见下文)。你知道 gcc 中是否有一些标志强制执行这些检查,或者为什么编译器没有警告我这个?

我正在使用基本-g -D_GNU_SOURCE -o outObjectFile -c myFile.c选项将 C 文件编译为目标文件。

0 投票
1 回答
7619 浏览

c - exit() 函数是否在 stdlib.h 之外的其他任何地方声明?

在尝试编译下面的示例时,我收到了警告:

经过一番搜索,我意识到该示例缺少语句#include <stdlib.h>。那么exit()函数在哪里声明?图书馆stdio.h没有声明它。我的代码也没有。如果编译器支持它,为什么它会发出警告?另外,为什么在 中重新定义它stdlib.h

例子:

0 投票
2 回答
290 浏览

c - gcc4.5 on redhat enterprise 3 使用 asm 警告消息

我在 64 位 Redhat Enterprise 3 机器上编译了 gcc 4.5.2(2.4.21-20.ELsmp,glibc 2.3.2)。它编译正常,但有很多警告消息,如

然后我尝试用编译器编译代码,它仍然会吐出这些 asm 警告,而且我没有在我的 C 代码中使用任何 asm。我怎样才能摆脱它?修复或抑制警告都很好。

0 投票
1 回答
1979 浏览

warnings - Code::Blocks - 运行程序时警告消失

我正在使用 Code::Blocks 10.05(目前在 Windows 上)。当我运行程序(Ctrl + F10)时,构建日志中的所有警告都消失了,所以第一行是“检查存在...”。因此,当我构建并运行 (F9) 时,无法读取警告,因为它们仅在几秒钟内可见。

改变它的设置在哪里?