相关疑难解决方法(0)

什么是 C++ 中对“char()”、“uint8_t()”、“int64_t()”、整数“T()”等的调用?

我以前从未见过这个函数的调用char()。这是在哪里描述的,它是什么意思?此用法是此 cppreference.com 社区 wiki 页面上示例的一部分:https://en.cppreference.com/w/cpp/string/basic_string/resize

short_string.resize( desired_length + 3 );
std::cout << "6. After:  \"";
for (char c : short_string) {
    std::cout << (c == char() ? '@' : c);  // <=== HERE ===
}
Run Code Online (Sandbox Code Playgroud)

描述中的措辞对我来说也没有任何意义,我不明白它在说什么:

将附加字符初始化为CharT().

在上下文中突出显示:

在此输入图像描述

相邻相关

  1. 促使我研究该std::string::resize()方法的原因是尝试学习如何预先分配 astd::string以便在 C 函数调用中用作缓冲区char*。这可以通过首先std::string调用my_string.resize()函数来预分配 来实现。然后,您可以安全地&my_string[0]作为标准char*写入索引my_string.size() - 1。也可以看看:
    1. 直接写入 std::string 的 char* 缓冲区
    2. 有没有办法获取 std:string 的缓冲区
    3. 如何将 a 转换std::string …

c++ initialization char

0
推荐指数
1
解决办法
425
查看次数

不存在从“std::string”到“const char *”的合适的转换函数 c++

这是一个用于版本号目录的简单程序。它无法编译,出现此错误:

不存在从“std::string”到“const char *”的合适转换函数

#include <iostream>
#include <stdio.h>
#include <io.h>

using namespace std;

int main() {
    int max = 10, daily_patch = 0, monthly_patch = 0, yearly_patch;

    cout << " Enter the yearly_patch Number : ";
    cin >> yearly_patch;

    for (int i = yearly_patch; i <= yearly_patch; i++) {
        for (int j = 0; j < max; j++) {
            for (int k = 0; k < max; k++) {
                string str1 = to_string(i);
                string str2 = to_string(j);
                string str3 = …
Run Code Online (Sandbox Code Playgroud)

c++

-1
推荐指数
1
解决办法
129
查看次数

从字符串中获取 char * 或 const char * 数据中断 16 个或更长的字符串

我有一个函数string_to_char(),它试图给我一个字符串形式,我可以将它传递到我正在使用的库中,它想要char *(但我认为与 一起使用const char *,所以我一直在尝试两者)。

我编写的用于测试我的实现的代码string_to_char()如下:

#include <iostream>

const std::string endl = "\n";

char * string_to_char(std::string str)
{
    return (char*) str.c_str();
}

int main()
{
    std::string test1 = "Some test strin";
    std::string test2 = "Some test string";

    char * result1 = string_to_char(test1);
    char * result2 = string_to_char(test2);

    std::cout << "part1" << endl;
    std::cout << result1 << endl;
    std::cout << string_to_char(test1) << endl;

    std::cout << "part2" << endl;
    std::cout << result2 << endl; …
Run Code Online (Sandbox Code Playgroud)

c++ string char c-str

-1
推荐指数
1
解决办法
80
查看次数

将std :: String转换为char*

我需要将字符串传递给socket send()函数,该函数只接受char*.所以我在这里尝试转换它:

void myFunc(std::string str)  //Taking string here const is good idea? I saw it on some examples on web
{
    char *buf = str.c_str;    //taking buf const is good idea?
    std::cout << str;
}

int main()
{
    const std::string str = "hello world";
    myFunc(str);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

给出错误:

test.cpp:6:18: error: cannot convert ‘std::basic_string<_CharT, _Traits, _Alloc>::c_str<char, std::char_traits<char>, std::allocator<char> >’ from type ‘const char* (std::basic_string<char>::)()const’ to type ‘char*’
Run Code Online (Sandbox Code Playgroud)

c++

-2
推荐指数
1
解决办法
9059
查看次数

如何使用rename()函数(c ++)使用字符串重命名文件?

这是我的代码:

    rename("tmp.png", Filename);
Run Code Online (Sandbox Code Playgroud)

重命名函数中的第二个参数是一个字符串.(用户决定名称是什么)如何正确编码,以便将tmp.png重命名为用户输入的内容?

我的导师说要以某种方式使用c_str,但我不确定如何.

这是我的第一篇文章,让我知道,如果你很难理解,或者如果我以某种方式弄错了..

c++ string rename file

-7
推荐指数
1
解决办法
1393
查看次数

标签 统计

c++ ×5

char ×2

string ×2

c-str ×1

file ×1

initialization ×1

rename ×1