日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

c语言 freopen txt_C语言:freopen函数

發(fā)布時間:2023/12/2 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c语言 freopen txt_C语言:freopen函数 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

當我們求解acm題目時,通常在設計好算法和程序后,要在調(diào)試環(huán)境(例如VC等)中運行程序,輸入測試數(shù)據(jù),當能得到正確運行結果后,才將程序提交到oj中。但由于調(diào)試往往不能一次成功,每次運行時,都要重新輸入一遍測試數(shù)據(jù),對于有大量輸入數(shù)據(jù)的題目,輸入數(shù)據(jù)需要花費大量時間。

使用freopen函數(shù)可以解決測試數(shù)據(jù)輸入問題,避免重復輸入,不失為一種簡單而有效的解決方法。

函數(shù)名:freopen

聲明:FILE *freopen( const char *path, const char *mode, FILE *stream );

所在文件: stdio.h

參數(shù)說明:

path: 文件名,用于存儲輸入輸出的自定義文件名。

mode: 文件打開的模式。和fopen中的模式(如r-只讀, w-寫)相同。

stream: 一個文件,通常使用標準流文件。

返回值:成功,則返回一個path所指定文件的指針;失敗,返回NULL。(一般可以不使用它的返回值)

功能:實現(xiàn)重定向,把預定義的標準流文件定向到由path指定的文件中。標準流文件具體是指stdin、stdout和stderr。其中stdin是標準輸入流,默認為鍵盤;stdout是標準輸出流,默認為屏幕;stderr是標準錯誤流,一般把屏幕設為默認。

下面以在VC下調(diào)試“計算a+b”的程序舉例。

C語法:

#include

int main()

{

int a,b;

freopen("debug\\in.txt","r",stdin); //輸入重定向,輸入數(shù)據(jù)將從in.txt文件中讀取

freopen("debug\\out.txt","w",stdout); //輸出重定向,輸出數(shù)據(jù)將保存在out.txt文件中

while(scanf("%d %d",&a,&b)!=EOF)

printf("%d\n",a+b);

fclose(stdin);//關閉文件

fclose(stdout);//關閉文件

return 0;

}

C++語法

#include

#include

int main()

{

int a,b;

freopen("debug\\in.txt","r",stdin); //輸入重定向,輸入數(shù)據(jù)將從in.txt文件中讀取

freopen("debug\\out.txt","w",stdout); //輸出重定向,輸出數(shù)據(jù)將保存在out.txt文件中

while(cin>>a>>b)

cout<

fclose(stdin);//關閉文件

fclose(stdout);//關閉文件

return 0;

}

freopen("debug\\in.txt","r",stdin)的作用就是把標準輸入流stdin重定向到debug\\in.txt文件中,這樣在用scanf或是用cin輸入時便不會從標準輸入流讀取數(shù)據(jù),而是從in.txt文件中獲取輸入。只要把輸入數(shù)據(jù)事先粘貼到in.txt,調(diào)試時就方便多了。

類似的,freopen("debug\\out.txt","w",stdout)的作用就是把stdout重定向到debug\\out.txt文件中,這樣輸出結果需要打開out.txt文件查看。

需要說明的是:

1. 在freopen("debug\\in.txt","r",stdin)中,將輸入文件in.txt放在文件夾debug中,文件夾debug是在VC中建立工程文件時自動生成的調(diào)試文件夾。如果改成freopen("in.txt","r",stdin),則in.txt文件將放在所建立的工程文件夾下。in.txt文件也可以放在其他的文件夾下,所在路徑寫正確即可。

2. 可以不使用輸出重定向,仍然在控制臺查看輸出。

3. 程序調(diào)試成功后,提交到oj時不要忘記把與重定向有關的語句刪除。

總結

以上是生活随笔為你收集整理的c语言 freopen txt_C语言:freopen函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。