0

char 配列について質問があります。'"1"+lapcounter+":"+seconds' という形式で、char 配列にする必要があります。この配列をこのフォームに入力するにはどうすればよいですか?

ありがとう

4

3 に答える 3

1

文字列にフォーマットしたい数値変数があることを意味している場合は、そのために文字列ストリームを使用します。

std::stringstream ss;
ss << "1" << lapcounter << ":" << seconds";

これで、そこから文字列を抽出できます。

std::string s = ss.str();

何らかの理由で本当に文字配列が必要な場合 (これは必要ないと思います)

char const * cs = s.c_str();
于 2015-04-12T09:52:14.783 に答える
1

sprintf、またはを使用しsnprintfます。この関数は同様に機能しますprintfが、標準出力の代わりに、指定した char 配列に出力されます。例えば:

char buffer[32];
snprintf(buffer, sizeof(buffer), "1%d:%d", lapcounter, seconds);
于 2015-04-12T09:54:07.263 に答える
0

to_stringは次のように使用されます。

#include <iostream>
#include <string>

int main() 
{
    int lapcounter = 23;
    std::string str("1");
    str.append(std::to_string(lapcounter ));
    str.append(":seconds");
    std::cout << str << std::endl;
}

版画

123:seconds

本当にchar配列が必要な場合は、それを取得しますss.c_str()

于 2015-04-12T10:09:22.487 に答える