问题标签 [c-str]
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++ - 尝试将字符串 char 转换为 int 时出错
我有一个简单的程序,我想将输入存储到矩阵中以便于访问。我在将简单的字符串字符转换为 int 时遇到问题,有人可以解释为什么我的代码在尝试编译时给我这个消息吗?
问题似乎与我使用 c_str() 函数有关,但如果我没记错的话,这是将字符转换为 int 值所必需的。
我的代码:
c++ - 使用 String 的 c_str() 并分配给 char const*:分配只读位置
我的问题是:我有一个常量指针指向一个常量 char 指针(二维字符数组,其中两个维度都是const
)。我需要将 C 字符串分配给这个数组。我有一个用于创建 c_strings 向量的 of s std::vector
。现在我将这些 C 字符串指针分配给这个数组,但我得到了std::string
c_str()
这是有错误的代码
如果有帮助,这里是字符串到 C 字符串部分的向量。
c++ - 如何查找给定字符串的 ENUM 类型?
我有一个这样的枚举类:
到目前为止,我在我的代码中使用它。
问题陈述:-
现在我有一个字符串,所以我需要使用该字符串,然后通过迭代上面的枚举来找到实际的 ENUM 类型。
下面是我的代码:
现在如果test_str
是xml
or XML
,那么我需要这样设置:
但是如果test_str
是application_json
or APPLICATION_JSON
,那么我需要这样设置:
对其他人也是如此。以下是我的完整代码:
如果有人传递了我的枚举中不存在的任何未知字符串,那么它应该默认使用TestClass::SetContentType(ContentTypeEnum::APPLICATION_JSON)
给定字符串查找确切枚举类型的正确方法是什么?
c++ - Printf 和 C++ 字符串
所以我有以下代码:
这很简单,但它不起作用。printf不打印任何内容。如果我将其更改为:
有人可以解释一下它的行为吗?
c++ - c_str 在 char* 末尾添加垃圾
我正在构建一个 ftp 服务器,这是从客户端发送到服务器的消息,用于检查文件大小是否得到服务器的批准。我需要在函数 write 中使用 char*,所以我想将字符串转换为 char*。字符串结构是 fileName#fileSize(test.txt#37)。我尝试了 c_str 但最后得到了垃圾。
让我们看看下面的代码:
虽然当我想使用 cout 在服务器中打印消息时,我得到了这个输出:test2#37�� 或接近它的东西,这意味着我最终得到了垃圾。
我如何清理垃圾?或任何其他转换为 char* 的命令?
c++ - 在 C++ 中的全局函数中使用结构成员的方法
我对 C++ 很陌生,而且我总是在这里和那里遇到一些小事情。最近的似乎是结构的问题。
我想使用我的函数“print_student”打印出这个学生的名字
我收到错误“Intellisense:表达式必须具有类类型”编译器错误说“.c_str 的左侧必须具有类/结构/联合”。“记录”在函数的第 3 行中带有红色下划线并给出了错误。
我在这里迷路了。我尝试使用非常完整的范围名称和所有内容,但它一直给出相同的错误。我不确定发生了什么,错误似乎非常......模糊。
c++ - fstream .open 并将 .txt 或 .dat 附加到文件名
这在某些编译器上运行良好......有没有办法做到这一点,它可以正常工作而不会成为 c++11 或 c++14 上的不同编译器的问题?
错误:没有从 'basic_string, std::allocator >' 到 'const char *' 的可行转换
所以我用谷歌搜索,找到了一些答案,或者在这种情况下,canswers(癌症),试过了
错误:二进制表达式的操作数无效('const char *' 和 'const char *')
c++ - cpp-如何只获取 c_str() 的值
我有一个返回的函数const char*
。在这个函数中,我有以下参数:
为了将 str 转换为const char*
我使用str.c_str()
.
当我调试时,我注意到str.c_str()
在字符串值之前包含一些东西(我猜是它的地址)。例如:如果 str="0" 我str.c_str()
将 0x68d5f9 "0"。为什么?如何仅获取字符串的值?
c++ - 通过从其他已经初始化的字符串复制索引字符形成的 c++ 字符串。无法使用 cout 打印新形成的字符串
在 C++ 中,我通过从另一个已经初始化的字符串(字符串类)复制字符索引来创建一个新的字符串(字符串类)。
但我无法使用cout
. 使用c_str()
我可以使用cout
. 但不是c_str()
只在使用时才需要,printf()
因为它需要交流类型的字符串?
编辑:感谢您的帮助!但是我的问题可能不太清楚,所以这些是我遇到的主要问题。请阅读以下内容,如果您能进一步帮助我,那就太好了!(另外,我理解b=a;
是最简单的分配方法,但我试图理解字符串,因此是问题。)
a)我不知道cpp字符串何时为空终止,何时不是,但在这种情况下,初始化后的a字符串为空终止,因为循环结束并且它在字符串a的最后一个字符之后结束,因为从出来循环并cout<<a[i];
打印 a 的最后一个字符。
b) 在循环中,在我包含cout<<b[i];
它的赋值之后,打印出我们期望的值刚刚分配给 b[i]。所以 b[i] 确实存在一些奇怪的原因。
c)在for循环之外,在程序结束时,当我cout<<b[2];
打印字符串的第三个字符时。如果我这样做cout<<b.c_str();
,它会打印出整个字符串。只有当我这样做时cout<< b;
,才会打印任何内容。为什么是这样?
c++ - 错误:无法从 'std::string* {aka std::basic_string 转换*}' 到 'std::string {aka std::basic_string}'|
我正在尝试创建一个写入文件的函数,但在将字符串作为参数传递时遇到问题。
并有这个错误。