我无法开始使用某个程序。我需要从文件中读取每个单词,然后将其转换为小写。我找到后,我想std::cout
每个单词。我假设我需要使用c_str()
一些方法。我猜我应该使用类似的东西:
ofs.open(infile.c_str());
但如何降低案例?
string[i] = tolower(string[i]);
答案 0 :(得分:1)
您可以使用locale中的std::tolower()
功能。不确定这是否是您正在寻找的,但这里是您的问题的快速解决方案(据我所知)。
#include<iostream>
#include<string>
#include<fstream>
#include<locale>
int main(){
std::string input;
std::ifstream inputStream;
inputStream.open("input.txt", std::ifstream::in);
while(inputStream >> input){
for(auto s : input)
{
std::cout << std::tolower(s, std::locale());
}
std::cout << " ";
}
return 0;
}