亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

對C++語言中dos命令的調用及system()函數使用方法的探究

2019-11-08 01:15:02
字體:
來源:轉載
供稿:網友

C++ system()函數的使用方法探究


本篇文章實際是一篇休閑娛樂文章,大家有興趣可以考慮如下問題(可以當做OJ題):

問題

你現在手頭有一份個人代碼,它十分詭異怎么也不能AC,于是你找來了一份std(標程),用它來進行對拍。當然,你很牛B,幾下就把對拍的bat(批處理)文件寫出來了。這時你發現dos中的fc比較一直顯示無差異,但你并不知道它都測了些什么(即你不知道輸入文件,因為它是隨機生成的)。于是,你決定想辦法把所有測試數據連同你自己與標程的輸出整理到形如“dataxxx”的文件夾中。由于測試數據很多,靠人力根本不可能完成這個任務。聰明的你一定能想出解決的辦法!

輸入

無輸入

輸出

無輸出

題目說明

最好結合實際經歷,編寫一份C++程序,它可以控制隨機數據的生成,還可以用這份數據進行測試,最后將它自己的測試文件連同兩個輸出文件按順序整理到文件夾(子目錄)“dataxxx”中,如“data1”,“data23”中??梢允褂胒reopen(),system()等函數,它們都在庫 < cstdlib >之中。

來源

當然,這題是我現場想的,就是生活中的一個實際應用。比如本人在OJ上做題時,有時會莫名其妙地被卡(就是明明對了卻就是不讓我過,哼),我對拍時閑得無聊想看它都測了啥,于是我就寫出了一份控制程序。

下面貼上一份代碼,因為我太弱了,所以比較時采用的是文件按位比較,且沒比較長度。我對于輸出“dataxxx”的解決方法是先寫好dos命令的前半部分,然后在后面將數字拼接上(使用< cstring >庫中的strcat()和strcpy()),細節可參考代碼

代碼

#include<ctime>#include<cstdio>#include<cstdlib>#include<cstring>#define maxn 505using namespace std;char cmp[maxn];int cnt=0;char cmd[maxn];int con=0;char s1[maxn]="md .//data";//斜線要打成雙斜線char s2[maxn]="copy data.in .//data";char s3[maxn]="copy my.out .//data";char s4[maxn]="copy std.out .//data";char l1[maxn]="md .//data";char l2[maxn]="copy data.in .//data";char l3[maxn]="copy my.out .//data";char l4[maxn]="copy std.out .//data";//字符串的大小要夠,否則會導致字符串拼接不成功,而且三個文件需要分開copy,否則會被強大地合并為一個文件,有興趣可以自己試一試char c1[2];void EXE(){ strcpy(l1,s1); strcpy(l2,s2); strcpy(l3,s3); strcpy(l4,s4);//將原模板復制到l1,l2,l3,l4中以備后續使用 int k[10]; int m=con; int size=0; while(m>0){ k[size++]=m%10; m=m/10; } for(int i=size-1;i>=0;i--){ c1[0]=k[i]+'0'; strcat(l1,c1); strcat(l2,c1); strcat(l3,c1); strcat(l4,c1);//字符串拼接 } system(l1); system(l2); system(l3); system(l4);//執行上面的l1,l2,l3,l4命令,先創建目錄,再把三份數據分別復制到指定地點 return;}bool Judge(){ cnt=0; fclose(stdout); int a=system("cd /d F://Someplace");//將當前路徑引到當前代碼的所在位置 int b=system("Test.exe < data.in > std.out"); int c=system("code2.exe < data.in > my.out");//這兩句用于輸入測試數據,取得輸出文件 freopen("std.out","r",stdin); while(scanf("%c",&cmp[cnt++])==1); freopen("my.out","r",stdin); int i=0;char ch; while(scanf("%c",&ch)==1){ if(ch!=cmp[i++]){ EXE(); return false; } } EXE(); return true;}int main(){ freopen("data.in","w",stdout); srand(time(NULL)); int A,B; do{ freopen("data.in","w",stdout);//各種重定向 do{ A=rand()%2000000000+1; B=rand()%2000000000+1; }while(A>B); 這份代碼兼職生成測試數據,其中Test.cpp為標程,code2.cpp為個人代碼(不要問我名字為什么這么怪),同時字符串內的“/”要打成“/”才對。程序可以加以改動,直接運行即可(可能速度稍微慢一些,一分鐘只能生成1000+個文件夾)

總結

當然本人也是非常的弱啦,肯定會有一堆dos大神或linux終端大神在默默地bs我。。。歡迎各位留言,評論,共同交流O(∩_∩)O~ 。哦,對了,下面貼上效果圖(上面指定了con大小不超過100)

這里寫圖片描述

你看它們的修改日期都一樣。。。

這里寫圖片描述

每個文件夾里面都是這三個文件,當然大小和內容都不相同:

這里寫圖片描述

我不禁想說:編程改變命運


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美另类极品videosbest最新版本| 亚洲va电影大全| 日韩在线观看免费全集电视剧网站| 亚洲精品久久久久久久久久久久| 亚洲精品国产精品国自产观看浪潮| 亚洲国产一区二区三区在线观看| 91精品国产综合久久男男| 亚洲免费视频一区二区| 91久久精品美女| 一区二区在线视频| 国产精品视频午夜| 欧美中文字幕在线播放| 国产精品高潮呻吟视频| 91在线视频成人| 久久久久久一区二区三区| 欧美日韩在线观看视频小说| 欧美午夜影院在线视频| 久久亚洲国产成人| 亚洲aa在线观看| 欧美精品中文字幕一区| 欧美三级欧美成人高清www| 成人福利网站在线观看11| 欧美成人精品激情在线观看| 欧美日产国产成人免费图片| 91精品国产一区| 日韩中文字幕视频在线| 欧美日韩另类在线| 亚洲社区在线观看| 日韩欧美综合在线视频| 欧美性生活大片免费观看网址| 欧美国产在线电影| 久久久久国产一区二区三区| 91香蕉嫩草影院入口| 欧美日本精品在线| 久久激情视频久久| 日韩动漫免费观看电视剧高清| 亚洲图中文字幕| 亚洲一区二区中文| 一区二区三区四区精品| 日韩av在线电影网| 国产午夜精品免费一区二区三区| 伊人久久免费视频| 国产在线不卡精品| 亚洲国产中文字幕在线观看| 精品国偷自产在线视频| 成人欧美一区二区三区在线湿哒哒| 国产日韩欧美电影在线观看| 日韩欧美一区视频| 91久久在线播放| 国产中文字幕日韩| 欧美一级淫片aaaaaaa视频| 亚洲精品狠狠操| 国产精品免费网站| 亚洲人成伊人成综合网久久久| 欧美性猛交xxxx免费看漫画| 日韩精品久久久久| 亚洲乱亚洲乱妇无码| 国产玖玖精品视频| 成人免费直播live| 亚洲国产成人精品女人久久久| 91产国在线观看动作片喷水| 在线色欧美三级视频| 国产精品一区二区久久| 国产精品一区二区性色av| 午夜精品久久久久久久白皮肤| www.欧美精品一二三区| 亚洲sss综合天堂久久| 97精品久久久中文字幕免费| 欧美裸体xxxx| 久久久在线免费观看| 欧美激情乱人伦| 久久精品视频中文字幕| 欧美综合国产精品久久丁香| 成人疯狂猛交xxx| 欧美激情在线观看视频| 欧美成人免费视频| 亚洲国产一区二区三区四区| 精品久久久在线观看| 欧美性猛交xxxx免费看久久久| 日韩av观看网址| 在线电影欧美日韩一区二区私密| 成人精品视频99在线观看免费| 日韩午夜在线视频| 亚洲精品白浆高清久久久久久| 国内精品一区二区三区四区| 91成品人片a无限观看| 深夜精品寂寞黄网站在线观看| 91九色综合久久| 成人黄色av免费在线观看| 国产精品999999| 国产在线a不卡| 欧美日韩国产成人| 欧美日韩国产综合新一区| 国产中文字幕91| 亚洲精品国产精品自产a区红杏吧| 亚洲精品美女在线观看| 亚洲人午夜精品| 国产精品视频最多的网站| 亚洲精品乱码久久久久久按摩观| 插插插亚洲综合网| 日韩中文字幕不卡视频| 国产www精品| 久久久国产精品视频| 欧美一区亚洲一区| 国产91精品久久久| 中文字幕久热精品在线视频| 成人久久18免费网站图片| 日韩av免费网站| 91亚洲一区精品| 成人网在线免费观看| 欧美国产在线电影| 一区二区三区视频在线| 欧美另类99xxxxx| 夜夜狂射影院欧美极品| 人人澡人人澡人人看欧美| 日韩美女福利视频| 国产偷国产偷亚洲清高网站| 欧美极度另类性三渗透| 国产日韩欧美在线| 日本精品免费一区二区三区| 久久天天躁狠狠躁夜夜躁| 8090成年在线看片午夜| 狠狠躁夜夜躁久久躁别揉| 亚洲国产精品热久久| 色婷婷综合成人av| 亚洲精品自产拍| 欧美国产欧美亚洲国产日韩mv天天看完整| 97成人精品区在线播放| 欧美性极品少妇精品网站| 日韩成人免费视频| 亚洲精品电影网| 91精品视频网站| 欧美激情一级欧美精品| 国产精品高潮呻吟久久av无限| 久久久久久12| 国产激情久久久久| 国产精品jvid在线观看蜜臀| 日韩欧美有码在线| 久久6精品影院| 国产成人aa精品一区在线播放| 一本色道久久综合狠狠躁篇的优点| 精品自拍视频在线观看| 久久精品国产视频| 91免费观看网站| 国产精国产精品| 日韩美女免费线视频| 中文字幕亚洲综合久久| 久久久国产视频| 日韩av在线导航| 亚洲va码欧洲m码| 国产丝袜精品视频| 69av在线视频| 欧美日韩美女在线| 国产精品99久久久久久久久久久久| 性欧美亚洲xxxx乳在线观看| 欧美激情国内偷拍| 成人免费激情视频| 91国产视频在线播放| 精品亚洲一区二区三区| 亚洲自拍偷拍一区| 亚洲福利在线看| 国产精品久久久久久久久久| xxx一区二区| 久久成人国产精品|