22得票3回答
为什么 g++ 找不到 iostream.h 头文件?

我正在尝试通过使用g++和(最终)Clang在Ubuntu命令行上编译C++程序。 我找到了一个网页,解释了MakeFiles,并按照他们的说明进行操作。 http://mrbook.org/tutorials/make/ 我把这四个示例文件下载到它们自己的目录中。 main.cpp ...

24得票1回答
“-msse,-msse2,-mssse3,-msse4 rtc”的cflgs sse选项有什么区别?如何判断使用哪个选项?”

针对 GCC 的 CFLAGS 选项:-msse,-msse2,-mssse3,-msse4,-msse4.1,-msse4.2。它们的使用是否互斥,还是可以一起使用? 我的理解是,选择设置哪个标志取决于目标体系结构(程序将在其上运行)是否支持该标志。这个理解正确吗? 如果是这样,我如何知...

16得票1回答
使用 .natvis 文件在 VS Code 中可视化 C++ 对象

根据这个链接,.natvis文件可用于可视化本地对象。具体来说,我想使用这个.natvis文件检查对象。 然而,上面的链接没有包含有关如何在VS Code中实际使用.natvis文件的任何信息。是否可以使用自定义.natvis文件? 以下是我的launch.json文件供参考: { ...

10得票3回答
错误:从不兼容的类型void*分配给char*

我正在尝试将来自libcURL HTTP请求的响应存储到C字符串中以便稍后解析。响应代码完全使用C编写,而其他所有内容都是用C++编写的。在任何其他的C++编译器上,它都应该能正常工作。但是当我尝试编译时,即使我提供“-x c”参数并跟随文件名,我也会得到这些具体的响应。g++ main.cp...

7得票2回答
我得到了这个错误:"glibc检测到"。

我刚刚写了一段CPP代码,使用G++在Ubuntu上进行了编译。当我运行我的代码时,一切都很好,代码运行良好并输出结果,但不会退出,并出现以下错误: *** glibc detected *** ./a.out: free(): invalid next size (fast): 0x09...

16得票3回答
scoped_lock如何避免发出“未使用变量”警告?

boost::mutex::scoped_lock是一个方便的RAII封装,用于锁定互斥量。我在另外一些情况下使用了类似的技巧:一个RAII封装,用于请求数据接口与串行设备分离/重新连接。 然而,我无法弄清楚为什么在下面的代码中,只有我的对象mst(它的实例化和销毁确实具有副作用)会导致g++...

49得票8回答
使用“sudo apt-get install build-essentials”命令

我试图在我的Ubuntu Linux电脑上使用 sudo apt-get install build-essentials 命令安装g++编译器,但是它给了我以下消息: 正在读取软件包列表... 完成 正在构建依赖树 正在读取状态信息... 完成 E: ...

25得票1回答
使用g++和-Og选项进行优化后,变量被优化掉了

当我使用 g++ 和 -Og 选项编译我的 C++ 程序时,我会看到一些变量被优化掉了,有时当前行也会跳过。这种行为是否符合此优化级别的预期,或者我是否存在某些问题?gcc 的手册上写道: -Og 优化调试体验。 -Og 启用不会干扰调试的优化。它应该是标准编辑-编译-调试周期的最佳优...

13得票1回答
在C++中打印完整的回溯信息

我想在Linux下以与gdb相似的格式转储C++程序的回溯信息。我尝试使用backtrace()和backtrace_symbols()函数来实现此目的,它们返回函数名称和偏移量。我可以使用__cxa_demangle()函数获取可读的函数名称。 是否有办法获取文件/行位置,就像gdb一样?

7得票6回答
如果sqrt()函数没有针对int类型进行定义,为什么它在int变量上可以正常工作?

在《使用C++进行编程:原理与实践》(第六版印刷,第三章)中,Stroustrup 在第68页指出:"请注意,sqrt() 不适用于 int 类型。" 以下是基于该章节的一个简单的 C++ 程序: #include "std_lib_facilities.h" int main() { ...