草庐IT

c++ - g++ 编译错误

我是Ubuntu的新手。我试图编译一个简单的“HelloWorld!”Ubuntu11.04中的c++代码,带有该代码(在终端中):gcc-Wall-W-Werrortex.cpp-otex.但是编译器返回了很多错误:/tmp/ccL8c1p8.o:Infunction`main':tex.cpp:(.text+0xa):undefinedreferenceto`std::cout'tex.cpp:(.text+0xf):undefinedreferenceto`std::basic_ostream>&std::operator>(std::basic_ostream>&,charco

C++:如何构建字符串/字符*

我是C++新手。我想制作一个char*,但我不知道怎么做。在Java中就是这样:intplayer=0;intcpu=0;Strings="You:"+player+"CPU:"+cpu;我该怎么做?我需要一个char*。我专注于在字符串后粘贴整数。 最佳答案 如果可以的话,您几乎肯定不想处理char*-您需要C++std::string类:#include..stringname="fred";或相关的stringstream类:#include#include#includeusingnamespacestd;intmain()

c++ - 为什么 C/C++ 有内存问题?

我读过很多程序员在用C/C++编程时说和写有很多与内存相关的问题。我打算学习用C/C++编程。我有C/C++的初学者知识,我想看一些简短的示例,为什么C/C++会出现内存管理问题。请提供一些sample。 最佳答案 在C或C++中,有许多方法可以破坏或泄漏内存。这些错误是最难诊断的错误之一,因为它们通常不容易重现。例如,无法释放您分配的内存很简单。例如,这将执行“双重释放”,尝试释放a两次但未能释放b:char*a=malloc(128*sizeof(char));char*b=malloc(128*sizeof(char));b=

存储之道:MySQL 中的字符串数据类型之 CHAR 与 VARCHAR

文章目录参考描述CHAR与VARCHAR常见的字符串数据类型权衡CHAR中尾随的空白字符固定字符长度PAD_CHAR_TO_FULL_LENGTH开启PAD_CHAR_TO_FULL_LENGTH模式配置文件Windows下MySQL常见版本的配置文件所在的路径Linux下MySQL常见版本的配置文件所在的路径SET关键字尾随空白字符的显现CHAR字段值的检索尾部空格的自动删除如何避免尾部空格的自动删除?输入字符超出最大字符长度默认处理方式严格模式比较VARCHAR的额外数据VARCHAE的数据存储方式参考项目描述MySQL官方文档TheCHARandVARCHARTypesMySQL官方文档

c++ - 'TypeInfo<char>(char * )' isn' t defined but worked pre-C++11; what changed, and how can I fix the error?

我正在尝试从CrysisWarsSDK的源代码构建DLL,并且过去在以前版本的VisualStudio(即2005、2008和2010)上成功地完成了此操作。我的具体问题是:Error4errorLNK2019:unresolvedexternalsymbol"structCTypeInfoconst&__cdeclTypeInfo(char*)"(??$TypeInfo@D@@YAABUCTypeInfo@@PAD@Z)referencedinfunction"void__cdeclSwapEndian(char*,unsignedint)"(??$SwapEndian@D@@YAX

c++ - 在 gdb 中使用 [] 运算符和 unordered_map 给出未解析的运算符

我有一个C++代码,我在其中实例化一个unordered_map,然后使用cout打印它的值。这很好用。但是,当我尝试在gdb中运行它并打印unordered_map的值时,这给了我错误。下面是代码片段:std::unordered_mapmymap={{"Mars",3000},{"Saturn",60000},{"Jupiter",70000}};std::cout上面的两个cout语句都打印了键“Mars”的unordered_map值。但是,当我使用gdb然后尝试使用以下语句在键“Mars”处打印mymap的值时,出现错误。(gdb)printmymap.at("Mars")C

c++ - 使用整数文字初始化 char 数组和 char 的区别

在我的系统上(4.13.11-1-ARCH,gcc7.2.0)char是signed。当使用integerliteral初始化char数组时,如下所示:constcharmydata[]={0x80};我收到以下错误:error:narrowingconversionof‘128’from‘int’to‘char’inside{}[-Wnarrowing]然而,当我改为执行constchardata=0x80时,编译器并不担心任何缩小,尽管它当然会发生。输出为7F,即最大正signedchar值。问题为什么编译器不会同样担心两种情况下的截断问题? 最佳答案

c++ - -Wconversion warning while using operator <<= on unsigned char

当我用gcc编译以下代码时:intmain(){unsignedcharc=1;c我收到这个警告:conversionto‘unsignedchar’from‘int’mayalteritsvalue[-Wconversion]为什么?这段代码有什么问题?其实,我真的可以使用oprator吗?在unsignedchar上变量?编译命令:g++test.cpp-Wconversion-otest.exe 最佳答案 这是一个有效的警告:c相当于:c=c和的规则假设操作数被提升,在这种情况下将提升为int结果是提升的类型。所以会有一个从i

c++ - 链接器错误:对 `std::ctype<char>::_M_widen_init() 的 undefined reference

我在尝试运行示例项目时遇到链接器错误。你能告诉我如何解决这个问题吗?提前致谢。make[1]:Enteringdirectory`/home/rumi/MobiusProject/Multiproc-Paper/Transformer/ssg'/usr/bin/g++-w-DMOBIUS_LITTLE_ENDIAN-DMOBIUS_LINUX-m32-ossgGen_Linux-L../../lib/Linux_lib/-L/home/rumi/Mobius/mobius/Mobius-2.3/Cpp/lib/Linux_lib-L/home/rumi/Mobius/mobius/Mo

c++ - 含参数 (const T&, const T&) 或 (const char (&)[N], const char (&)[M]) 的重载模板的模糊调用

对于下面的代码:#includeusingstd::cout;usingstd::endl;templateintcompare(constT&,constT&){coutintcompare(constchar(&)[N],constchar(&)[M]){cout当我用g++-std=c++1y编译代码时,它会提示:error:callofoverloaded‘compare(constchar[3],constchar[3])’isambiguouscompare("hi","is");根据模板重载的规则,可行的函数有:compare(constT&,constT&)withT=