gpt4 book ai didi

c++ - 如何将变量与字符串值组合

转载 作者:行者123 更新时间:2023-11-30 02:07:32 26 4
gpt4 key购买 nike

我想在(ofstream)文件路径中将变量与字符串值结合起来

示例:

long phNumber;
char bufPhNumber[20];
ofstream ifile;

cout << "Phone Number: ";
cin >> phNumber;
itoa(phNumber,bufPhNumber,20);

ifile.open("c://" + bufPhNumber + ".txt",ios::out); // error in this line

如何将此变量 (bufPhNumber) 与该字符串组合(“c://”+此处的变量 +“.txt”)

最佳答案

这样做:

ifile.open((std::string("c://") + bufPhNumber + ".txt").c_str(),ios::out);  

解释:

它首先创建一个字符串,然后使用 operator+() 连接其余的 c 字符串:

std::string temp = std::string("c://") + bufPhNumber + ".txt";

然后获取 c_str() 并将其传递给 .open():

ifile.open(temp.c_str(),ios::out);  

然而,在C++11中,你不需要做.c_str(),你可以直接使用std::string


更好的解决方案应该是这样的:

std::string phNumber; //declare it as std::string

cout << "Phone Number: ";
cin >> phNumber; //read as string

//use constructor
ofstream ifile(("c://" + phNumber + ".txt").c_str(), ios::out);

关于c++ - 如何将变量与字符串值组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7777918/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com