本文採用fortran語言,通過函式呼叫的形式,實現對指定檔案的行數統計。針對檔案中是否有空白行,均可以實現。
程式源**
program conunt_numimplicit none integer,external::getfilenum,getfilenum_blank integer::i open(7,file='start1.txt') i=getfilenum(7) write(*,*) 'number of line without blankspace',i i=getfilenum_blank(7) write(*,*) 'number of line with blankspace',i close(7) stopend !--------------------檔案中有多少行資料-不統計空白行---------------------------------integer function getfilenum(ifileunit) implicit none logical,parameter::blssunrisefromeast=.true. integer,intent(in)::ifileunit character*(1)::cdummy getfilenum=0 rewind(ifileunit) do while(blssunrisefromeast) read(ifileunit,*,end=999,err=999)cdummy getfilenum=getfilenum+1 end do 999 rewind(ifileunit) returnend function getfilenum!--------------------檔案中有多少行資料-統計空白行---------------------------------integer function getfilenum_blank(ifileunit) implicit none logical::alive=.true. integer::status=0 integer,intent(in)::ifileunit character*100::cdummy logical,parameter::blssunrisefromeast=.true. getfilenum_blank=0 do while(alive) read(unit=ifileunit,fmt="(a100)",iostat=status)cdummy !write(*,*) getfilenum_blank,status if (status==0) then getfilenum_blank=getfilenum_blank+1 else exit end if end do rewind(ifileunit) returnend function getfilenum_blank
程式實現過程1.主程式定義
program conunt_numimplicit none......stopend
完成主程式定義,變數宣告以及函式宣告
對子函式呼叫
(i=getfilenum(7),i=getfilenum_blank(7))
通過引數傳遞進行計算
2.子函式定義
integer function getfilenum(ifileunit)......end function getfilenum
integer function getfilenum_blank(ifileunit)......end function getfilenum_blank
分別定義兩個子函式,區別在於是否統計空格行
3.執行結果
總結
1.程式比較簡單
2.子函式的宣告,注意宣告函式返回值的型別
此處兩個子函式宣告均為整型(integer)
3.read(..)語句中的子句,iostat
返回操作後的i/o狀態給status
0=成功(子函式2就是靠它做的判斷)
正數=讀取失敗
-1=檔案結束
-2=記錄結束
過載函式的過載確定過程
最近在找工作的過程中,發現很多平時沒有注意的問題,反省之後,決定好好把基礎知識過一過。過載函式的定義 出現在相同作用域中的兩個函式,如果具有相同的名字而形參表不同,則稱為過載函式。這裡有兩個地方需要注意 同乙個作用域,形參表不同。形參表不同的意思就是形參個數不同,或者引數型別不同。過載確定分三步 1...
AfxBeginThread 函式的用法例項講解
afxbeginthread 使用者介面執行緒和工作者執行緒都是由afxbeginthread建立的。現在,考察該函式 mfc提供了兩個過載版的afxbeginthread,乙個用於使用者介面執行緒,另乙個用於工作者執行緒,分別有如下的原型和過程 使用者介面執行緒的afxbeginthread 工作...
string h檔案中函式的詳細用法,附加例項
自以為身經百戰,突然發現好多基本常用的string.h中字串處理函式自己都不知道,用都沒用過,真是井底之蛙,會個strcmp strcpy就自以為是,沉下身心好好學學吧,唉!函式名 strcpy 功 能 拷貝乙個字串到另乙個 用 法 char strcpy char destin,char sour...