草庐IT

months3char

全部标签

c++ - 如何将 'const boost::filesystem2::path' 变成 'const char *' ?

如何将“constboost::filesystem2::path”转换为“constchar*”? 最佳答案 尝试使用path::string().c_str() 关于c++-如何将'constboost::filesystem2::path'变成'constchar*'?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/4875482/

C++ 比较字符串到 "%"char

我想在C++中实现字符串比较,将字符串与“%”符号进行比较。我可以这样做:std::equal(str1.begin(),std::find(str1.begin(),str1.end(),L'%'),str2.begin());因为我在许多字符串的循环中这样做,我想知道是否有一种方法没有两个不同的字符串遍历find和equal(也许有一个可以在任何时候中止比较的谓词)。boost没问题。 最佳答案 你可以试试std::mismatch.以下代码将在C++14中运行(它需要使用两个迭代器对进行模板重载),但它在C++11(或03,尽

c++ - char 对象比较的语义

当我今天阅读一些旧代码时,我注意到以下内容assert行:assert(('0'目的是断言hexChar是十六进制数字([0-9A-Fa-f])。它依靠char的类似ASCII的排序来做到这一点。表示'A'的对象,'B',...,'F'和'a','b',...,'f'.考虑到执行字符集是实现定义的,我开始怀疑这是否总能达到我的预期。C++标准在第2.3节字符集中提到:Thebasicexecutioncharactersetandthebasicexecutionwide-charactersetshalleachcontainallthemembersofthebasicsource

c++ - 从 ‘const char*’ 到 ‘char*’ [-fpermissive] 的无效转换

int::cadenacalculatelenght(constcadena&a,constchar*cad){cadenac;intlenght=0;char*punt;punt=cad;while(*punt){lenght++;punt++;}returnlenght;}我有这个问题,我想计算C字符串的长度而不使用像strlen这样的函数,在我的cadena类的其他方法中我可以,因为它不是constchar*,但现在我不知道该怎么办。 最佳答案 您可以将punt声明为正确的类型:constchar*punt=cad;

C++,从 ‘char’ 到 ‘const char*’ 的无效转换

在C++中我有这个程序:#includeusingnamespacestd;intmain(){stringexpression_input;cout我收到以下错误:prog.cpp:15:error:invalidconversionfrom‘char’to‘constchar*’prog.cpp:15:error:initializingargument2of‘std::basic_string&std::basic_string::insert(typename_Alloc::rebind::other::size_type,const_CharT*)[with_CharT=ch

c++ - char* 不应该隐式转换为 std::string 吗?

这是我的代码:#includeusingnamespacestd;structST{};booloperator==(conststructST*s1,conststring&s2){returntrue;}intmain(){structST*st=newST();constchar*p="abc";if(st==p){return0;}return1;}编译错误:prog.cpp:14:12:error:comparisonbetweendistinctpointertypes‘ST*’and‘constchar*’lacksacast[-fpermissive]if(st==p)

c++ - 让模板通过指定 bitesize 在 char/short/int 之间进行选择?

我有这样的东西:templatestructbin{private:public:struct{int_value:SIZE;};}是否可以根据SIZE更改_value的数据类型?如果SIZE=8且 最佳答案 这不是特别优雅,但是:templatestructbest_integer_type{typedefbest_integer_type::typetype;};templatestructbest_integer_type{typedefchartype;};templatestructbest_integer_type{ty

c++ - 使用 "const char*"和 "char*"参数连接两个第三方模块

我有两个第三方模块,我必须将它们组合起来。首先,我从一个类中获取数据。我会将这些数据提交给一个函数。boolloadLibrary(constchar*strPlugName){HPLUGINtemp=_BASS_PluginLoad(strPlugName,0);returnfalse;}constchar*strPlugName是我从另一个库获得的值。我自己无法更改此值类型。在函数内部我尝试调用BASS库函数。HPLUGINtemp=_BASS_PluginLoad(strPlugName,0);Definition:typedefHPLUGIN(*BASS_PluginLoad_

c++ - 加倍到 Const Char*

如何将double转换为constchar,然后再将其转换回double?我想将double转换为字符串,通过fputs将其写入文件,然后当我读取文件时,需要将其转换回double。我使用的是VisualC++2010ExpressEdition。 最佳答案 如果您只想将double值写入文件,您可以直接写入,无需将它们转换为constchar*。将它们转换为constchar*是多余的。只需使用std::ofstream作为:std::ofstreamfile("output.txt")'doubled=1.989089;file

c++ - 如何将 stringstream 内容放入 char 而不是 string 类型?

大家都知道stringstream.str()需要一个字符串变量类型来存储stringstream.str()的内容。我想将stringstream.str()的内容存储到char变量或char数组或指针中。这有可能吗?请用你的答案写一个简单的例子。 最佳答案 为什么不只是std::strings=stringstream.str();constchar*p=s.c_str();?编辑:请注意,您不能随意提供p在你的函数之外:它的生命周期被绑定(bind)到s的生命周期,所以您可能想要复制它。编辑2:正如@David所暗示的,上面的