整理一下

來源:互聯網
上載者:User

閑著無聊,將以前寫過的代碼整理了一下,看看我這一年多的時間裡寫了多少行代碼,於是花了20分鐘寫了一個統計檔案夾下所有.c和.cpp程式碼數的簡單小程式,統計了以前寫的程式碼數,統計結果是1.2w行,這裡面應該沒有比較垃圾的代碼。感覺現在比大一剛入學時候的水平提升了不少,希望2年後我的能力能比現在更強,我也會努力的~~

 

統計指定目錄下所有.c和.cpp行數,很簡單的小程式。輸入目錄,即可輸出每個檔案行數和總行數。。注意輸入目錄時最後別忘記加/

 

#include<windows.h><br />#include<iostream><br />#include<stdlib.h><br />using namespace std;</p><p>long sum=0;</p><p>void cal(char *way)<br />{<br />int lenth=strlen(way),b=1;<br />if(!stricmp(&way[lenth-4],".cpp")||!stricmp(&way[lenth-2],".c"))<br />{</p><p>FILE *p=fopen(way,"r");<br />while(!feof(p))<br />{<br />if(fgetc(p)=='/n')<br />b++;<br />}<br />sum+=b;<br />cout<<way<<" "<<b<<endl;<br />fclose(p);<br />}<br />}</p><p>void searchdisk(char *way)<br />{<br />WIN32_FIND_DATA f; HANDLE done; char newway[255],bian[255]; DWORD errorcode = 0;<br />strcpy(newway,way);<br />strcat(newway,"*.*");<br />done=FindFirstFile(newway,&f);<br />while(errorcode!=ERROR_NO_MORE_FILES)<br />{<br />errorcode=GetLastError();<br />if(errorcode==ERROR_NO_MORE_FILES)<br />break;<br />if(!(f.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY))<br />{<br />strcpy(bian,way);<br />strcat(bian,f.cFileName);<br />cal(bian);<br />}<br />else if( stricmp(f.cFileName, "System Volume Information") && stricmp(f.cFileName, "recycled")&& stricmp(f.cFileName, "windows")&& stricmp(f.cFileName, "Documents and Settings") && (f.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) && strcmp(f.cFileName, ".") && strcmp(f.cFileName, "..") )<br />{<br />strcpy(bian,way);<br />strcat(bian,f.cFileName);<br />strcat(bian,"//");<br />searchdisk(bian);<br />}<br />errorcode=GetLastError();<br />FindNextFile(done,&f);<br /> }<br /> CloseHandle(done);</p><p>}</p><p>int main()<br />{<br />char path[255];<br /> cin>>path;<br />searchdisk(path);<br />cout<<sum<<endl;<br />}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.