通过引用其他函数传递.txt文件
Passing .txt files by reference to other functions
我有以下代码,它简单地读取前两行的.txt文件,这应该指示.txt文件携带的网格的高度和宽度。
#include <string>
#include <cstdlib>
#include <iostream>
#include <fstream>
using namespace std;
void test(string filename, int& height, int& width);
int main(){
string filename;
ifstream infile;
int height;
int width;
cout << "Enter filename: ";
cin >> filename;
test(filename, height, width);
return 0;
}
void test(string filename,int& height, int& width){
ifstream infile;
infile.open(filename);
infile >> height;
infile >> width;
}
我想知道我是否可以更改test()
的参数,以便它将文件作为参数而不是文件名,因为我可能不得不在其他函数的其他地方使用.open(filename
,而且我不想一遍又一遍地输入它。如果可能的话,我知道是这样,我只想在main中打开文件一次,并能够在我的任何文件中用作参数。
您可以将文件传递给函数。您必须通过引用传递它。
void test(std::ifstream& infile, int& height, int& width) {
infile >> height;
infile >> width;
}
int main()
{
std::string filename;
std::cout << "Enter filename: ";
std::cin >> filename;
std::ifstream infile;
int height;
int width;
infile.open(filename);
test(infile, height, width);
return 0;
}
相关文章:
- 如何将 txt 文件中的行分隔为组件C++
- 无法打开.txt文件
- 如何使用CLion在Mac上创建一个新的.txt文件
- 使用fstream对txt文件中的数字进行循环
- Visual Studio在尝试读取resource.txt文件时崩溃
- 如何从txt文件中读取多个不同长度的数组?
- 在一次迭代中从 txt 文件中读取多行
- 通过比较C++中的行在 txt 文件中搜索的最简单方法是什么?
- 写入超过 1GB 的.txt文件时出现奇怪的行为
- 视觉 如何循环访问C++中遵循类似格式的多个.txt文件?
- txt 文件中浮点数的最大和最小值
- 从.txt文件中读取浮点型数字并在公式中使用它们
- C++将文本从.txt文件解析为变量
- 在树结构.txt文件中搜索节点
- 为什么我无法打开/读取从 Python 调用的 C 扩展名中的 txt 文件?
- 在 txt 文件中显示前两个数字的程序
- 如何从具有两列的.txt文件创建并行数组?
- 如何使用c ++读取带有非英文字母的*.txt文件?(国际化)
- 如何像在 C++ 中处理数组一样对 .txt 文件中的字符进行寻址?
- 如何读取 TXT 文件并仅将 int 存储在 C 中