C ++调用从txt文件输出信息的函数

Posted

技术标签:

【中文标题】C ++调用从txt文件输出信息的函数【英文标题】:C++ call a function that outputs info from a txt file 【发布时间】:2014-01-23 03:19:11 【问题描述】:

所以我是 C++ 的初学者,只是完全陷入了一个问题。我有使用 Java 的背景,我正在尝试应用它,但我最终只会让自己更加困惑。我的老师在 C++ 方面教我们的真的不够多,所以我一直在研究和使用 YouTube 几个小时来寻找可以帮助我的东西。

问题是这样的: 编写一个 C++ 程序:

    使用输入重定向来遍历部分文件并计算 2660 门课程中有多少是 GER。将计数输出到屏幕。请注意,部分编号有时包含字母,因此您应该将其作为字符串读取(与课程编号相同)。 为每个部分调用一个函数。如果课程是 GER 并且以 CSCE 作为课程主题,该函数应输出课程主题和编号。

我已经完成了第一部分,它可以正常工作。我使用的 txt 文件包含 CRN、主题、课程编号以及是否是 2660 门不同课程的 GER。

我的问题是数字 2。我还没有学会如何调用字符串,甚至在这样的函数中使用字符串。

这是我目前所拥有的。第一部分我可能完全关闭,但我知道我的 int main 是正确的 非常感谢任何输入或朝着正确方向的推动!谢谢

#include <iostream>
#include <string>
using namespace std;

void printCsce(int total, int CRN, std::string subject, std::string courseNum, 
std::string courseSection, std::string yesNo);

void  printCsce(int total, int CRN, std::string subject, std::string courseNum,   
std::string courseSection, std::string yesNo)
    total=2660;
    for (int i=0; i <total; i++)
    cin >> CRN;
    cin >> subject;
    cin >> courseNum;
    cin >> courseSection;
    cin >> yesNo;

    if (subject=="CSCE" && yesNo=="Yes")
    std::cout << CRN << subject << endl;




int main()

    int total=2660;
    int CRN;
    string subject;
    string courseNum;
    string courseSection;
    string yesNo;
    int sum=0;

    cin >> total;
    for (int i=0; i<total; i++)
    
cin >> CRN;
    cin >> subject;
    cin >> courseNum;
    cin >> courseSection;
    cin >> yesNo;

    if (yesNo=="Yes") 
     sum++;
    

cout << "There are "<< sum << " courses that are GERS."<<  endl;
    cout << printCsce << endl;

【问题讨论】:

使用字符串作为函数的参数并没有什么特别之处。只需使用变量作为参数调用函数。 我不是一个真正的Java程序员,但我认为C++和Java在这方面没有太大区别。 作为一般的编程建议,应用分而治之的原则。您不确定如何使用字符串?完成那个:ideone.com/062lVD,然后扩展你的理解:ideone.com/yuMgtV 在上面添加一个按值与按引用的示例。 ideone.com/R4IyRs 谢谢!我没有使用类或任何东西,所以我有点难以理解如何将它应用到我的程序中。不过我明白了一些。我更新了我的程序,现在我得到的只是我的主打印行,然后是 1。我不知道为什么。 【参考方案1】:

你必须参考你的论点。当您按值传递时,编译器会进行复制,因此提取(cin &gt;&gt; x) 仅影响对象的本地副本:

void printCsce(int& total, int& CRN, std::string& subject,
    std::string& courseNum, std::string& courseSection, std::string& yesNo);

【讨论】:

谢谢你,我能够找出我的问题!

以上是关于C ++调用从txt文件输出信息的函数的主要内容,如果未能解决你的问题,请参考以下文章

替换文件里的相关单词之文件类型为txt

为啥我无法打开/读取从 Python 调用的 C 扩展名中的 txt 文件?

关于C语言中文本文件的逐行读取的实现

怎样用C语言将文件复制另外的文件夹

Python函数:使用批处理文件将参数从.txt文件传递给python函数并执行函数

linux c语言编程