问题标签 [gcc]
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.
c - 如何修复“在 C99 模式外使用的 for 循环初始声明”GCC 错误?
我正在尝试解决3n+1 问题,我有一个for
看起来像这样的循环:
不幸的是,当我尝试使用 GCC 编译时出现此错误:
3np1.c:15:错误:在 C99 模式外使用的“for”循环初始声明
我不知道C99模式是什么。有任何想法吗?
c - Is GCC broken when taking the address of an argument on ARM7TDMI?
My C code snippet takes the address of an argument and stores it in a volatile memory location (preprocessed code):
I used an SVN version of GCC for compiling this code. At the end of function foo
I would expect to have the value 1
stored in the stack and, at 0x40000d4
, an address pointing to that value. When I compile without optimizations using the flag -O0
, I get the expected ARM7TMDI assembly output (commented for your convenience):
It clearly stores the argument first on the stack and from there stores it at 0x40000d4
. When I compile with optimizations using -O1
, I get something unexpected:
This time the argument is never stored on the stack even though something from the stack is still stored at 0x40000d4
.
Is this just expected/undefined behaviour? Have I done something wrong or have I in fact found a Compiler Bug™?
c - 应该使用哪个 4.x 版本的 gcc?
我工作的产品组目前正在使用 gcc 3.4.6(我们知道它很古老)作为大型低级 c 代码库,并希望升级到更高版本。我们已经看到在我们测试过的所有硬件平台上测试不同版本的 gcc 4.x 的性能优势。然而,我们非常害怕 c 编译器的错误(从历史上看是有充分理由的),并且想知道是否有人知道我们应该升级到哪个版本。
人们是否将 4.3.2 用于大型代码库并觉得它运行良好?
c++ - 如何列出 .so 文件中的符号
如何列出从 .so 文件导出的符号?如果可能的话,我还想知道它们的来源(例如,如果它们是从静态库中提取的)。
我正在使用 gcc 4.0.2,如果这有什么不同的话。
c++ - 调试链接错误的最佳实践
在使用 C++ 构建项目时,我发现调试链接错误很棘手,尤其是在获取其他人的代码时。人们使用什么策略来调试和修复链接错误?
c - 如何在 Cygwin 中执行文件?
如何a.exe
使用 Cygwin shell 执行?
我在 Windows 上的 Eclipse 中创建了一个 C 文件,然后使用 Cygwin 导航到该目录。我在 C 源文件上调用了 gcc 并a.exe
生成了。我想跑a.exe
。
exception - 可移植地处理 C++ 中的异常错误
我正在将 Visual C++ 应用程序移植到 GCC(应该建立在 MingW 和 Linux 上)。
现有代码__try { ... } __except(1) { ... }
在一些地方使用块,因此几乎没有什么(可能是内存不足类型错误?)会使程序退出而不做一些最小的日志记录。
用 GCC 做类似的事情有哪些选择?
编辑:感谢 Visual Studio 中指向 /EH 选项的指针,我现在需要一些关于如何在 Linux 上处理信号的示例。我从 2002 年发现了这条消息。
除了我应该注意的其他信号SIGFPE
吗SIGSEVG
?(主要关心那些可能从我做错事中提出的问题)
赏金信息:我希望我的应用程序能够在退出之前自行记录尽可能多的错误情况。
我可能会收到哪些信号,哪些信号通常不可能在之后记录错误消息?(内存不足,还有什么?)
我如何以一种可移植的方式处理异常和(最重要的)信号,使代码至少在 Linux 和 MingW 上运行相同。#ifdef 没问题。
我不只是有一个记录失败的包装进程的原因是,出于性能原因,我保存将一些数据写入磁盘直到最后一分钟,所以如果出现问题,我想尽一切可能尝试在之前写出数据退出。
c - 警告/错误“函数声明不是原型”
我有一个我创建的图书馆,
文件mylib.c:
文件mylib.h:
在我的程序中,我试图调用这个库函数:
文件myprogram.c:
当我尝试编译此程序时,出现以下错误:
我正在使用:gcc (GCC) 3.4.5 20051201 (Red Hat 3.4.5-2)
声明函数原型的正确方法是什么?
c++ - 混合 C/C++ 库
gcc 是否可以链接到使用 Visual C++ 创建的库?如果是这样,这样做是否会产生任何冲突/问题?
c++ - 测量 C++ 中的异常处理开销
在 C++ 中测量异常处理开销/性能的最佳方法是什么?
请提供独立的代码示例。
我的目标是 Microsoft Visual C++ 2008 和 gcc。
我需要从以下情况中获得结果:
- 没有 try/catch 块时的开销
- 有 try/catch 块但不抛出异常时的开销
- 抛出异常时的开销