Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何在cpp和c中不使用cout/printf输出文本?_C++_C_Printf_Cout - Fatal编程技术网

C++ 如何在cpp和c中不使用cout/printf输出文本?

C++ 如何在cpp和c中不使用cout/printf输出文本?,c++,c,printf,cout,C++,C,Printf,Cout,我的部分cpp代码如下所示: void Error() { string line; fperror.open("Error.txt"); while ( getline (fperror,line) ) { cout << line << endl; } fperror.close(); return; } 这是我在课堂上的项目,我们的教授告诉我们不允许在函数中使用cout/cin或printf/scanf。所以我想知道是否可以不使用cout/printf输出文

我的部分cpp代码如下所示:

void Error()
{
string line;
fperror.open("Error.txt");
while ( getline (fperror,line) )
{
  cout << line << endl;
}
fperror.close();

return;
}

这是我在课堂上的项目,我们的教授告诉我们不允许在函数中使用cout/cin或printf/scanf。所以我想知道是否可以不使用cout/printf输出文本文件的内容?(我们必须使用void-fun(void)类型的函数)

当然还有其他函数可以调用,但我怀疑您没有抓住要点。您的讲师可能的意思是,您的函数本身不应该打印任何内容。相反,它应该返回调用方随后打印的内容。赋值的部分目的可能是为了证明您了解
return
语句的工作原理以及如何传递和接收函数参数。在这种情况下,使用任何函数来生成输出,而不仅仅是printf和cout,都将是一个错误。提到这两个函数是因为这可能是你在课堂上唯一学到的东西,列举所有其他的可能性可能会让那些担心他们应该知道所有其他函数是什么的学生感到困惑和不知所措。请咨询您的讲师以确认。

您可以使用流:

std::ofstream ofs("file.txt");
ofs << "text";   // This line outputs "text" to file
std::ofs流(“file.txt”);

ofs您可以使用C/C中的显示您的输出++

例如:


fread
/
fwrite
?虽然这是C++类,但是对IOFFROW……进行命名是相当愚蠢的。如果你的导师能够避免这种情况,他们就不需要理解任何人的代码。不适用于格式化输出。如果你想要原始输出,那么hellyas.Eh。即使对于原始输出,C代码与std::cout之类的东西相比也相当难看。事实上,她告诉我们使用四种不同类型的函数(没有专门在其中使用cout/printf),而我遇到的问题是,该函数不返回任何内容,同时也不接收任何内容。对于我这个初学者来说,只有当函数不能接收和返回任何东西时,我才能考虑让它输出一些东西。现在你自相矛盾了。你刚才说你应该使用这些函数,但在你的问题中,你说你不允许使用它们。再次向你的指导老师确认你应该做什么。也许你应该使用一个文件?我们应该使用它们(在四种不同类型的函数中);我说过不允许在上述函数中使用cout/printf。这也是我所做的,我使用了一个文件,但是在C++中,它仍然要求我使用CUT(至少我知道),这就是我在这里问的原因。
std::ofstream ofs("file.txt");
ofs << "text";   // This line outputs "text" to file
char buffer[] = "hello world"

fwrite (buffer , sizeof(char), sizeof(buffer), stdout);