在C 語言中沒有辦法把其他文件里的內容傳遞給主函數 main( )。因為任何一個 C 語言源程序都是從 main( ) 函數開始執行的。所以只能夠在主函數 main( ) 中,將文件里的內容傳遞給用戶自定義的子函數才對。例如如下 C 程序:
成都創新互聯公司是一家專業的成都網站建設公司,我們專注成都網站設計、成都網站建設、網絡營銷、企業網站建設,友情鏈接,1元廣告為企業客戶提供一站式建站解決方案,能帶給客戶新的互聯網理念。從網站結構的規劃UI設計到用戶體驗提高,創新互聯力求做到盡善盡美。
#include stdio.h
#define MAX 100
void main( )
{
FILE * fpr ;
char file_buffer[MAX] ;
fpr = fopen("my_textfile", "r" ) ; /* 以讀方式打開 my_textfile 文本文件 */
if( fpr == NULL )
{ /* 若文件打開失敗,則退出系統 */
printf("Can't open my_textfile for read!\n") ;
exit(1) ;
}
fgets(buffer, MAX, fpr) ; /* 從文件中讀入一行數據 */
my_subfunc(buffer) ; /* 調用用戶自定義的子函數 */
puts(buffer) ; /* 顯示處理后的結果 */
fclose(fpr) ; /* 關閉文件 */
}
my_subfunc(char buffer[ ])
{
int i = 0 ;
for( i = 0 ; buffer[i] != '\0' ; i++)
buffer[i] += 2;
}
動態鏈接庫DLL的加載:隱式加載(載入時加載)和顯式加載(運行時加載)
OutOfMemory.CN技術專欄-?C語言-?C語言入門教程-?C語言輸出函數(printf)和輸入函數(scanf)
上一篇:C語言基本概念下一篇:C語言程序的結構特點
C語言輸出函數(printf)和輸入函數(scanf)
前面的幾個例子都用到了輸出函數printf,例1-3還用到了輸入函數scanf,這里我們先簡單介紹一下它們的格式,以便后面使用。scanf和printf這兩個函數分別稱為格式輸入函數和格式輸出函數。其
教程
前面的幾個例子都用到了輸出函數printf,例1-3還用到了輸入函數scanf,這里我們先簡單介紹一下它們的格式,以便后面使用。
scanf和 printf這兩個函數分別稱為格式輸入函數和格式輸出函數。其意義是按指定的格式輸入輸出值。因此,這兩個函數在括號中的參數都由以下兩部分組成:
1) 格式控制串:格式控制串是一個字符串,必須用雙引號括起來,它表示了輸入輸出量的數據類型。
在printf函數中可以在格式控制串內出現非格式控制字符,這時在顯示屏幕上會顯示源字符串。各種類型的格式表示方式請參考:C語言格式輸出函數printf()詳解。
在scanf函數中也可以在格式控制串內出現非格式控制符,這時會將輸入的數據以該字符為分隔。各種類型的格式表示方式請參考:C語言scanf()函數。
1、main函數可以不帶參數,也可以帶參數,這個參數可以認為是 main函數的形式參數。
C語言規定main函數的參數只能有兩個,還規定argc(第一個形參)必須是整型變量,argv( 第二個形參)必須是指向字符串的指針數組。加上形參說明后,main函數的函數頭應寫為:
int main (int argc,char *argv[])
2、由于main函數不能被其它函數調用,因此不可能在程序內部取得實際值。實際上,main函數的參數值是從操作系統命令行上獲得的。當要運行一個可執行文件時,在DOS提示符下鍵入文件名,再輸入實際參數即可把這些實參傳送到main的形參中去。
DOS提示符下命令行的一般形式為:
C:\可執行文件名 參數 參數……;
#includestdio.h
int func() {
return 10000;//這個函數返回了一個數字
}
void func1(int num) { printf("%d", num); }//這個函數接受一個數字并輸出
int main()
{
func1(func());//func1接受func返回的數字并輸出
return 0;
}
網頁名稱:c語言怎么傳遞到函數 c語言怎么傳遞參數
標題鏈接:http://vcdvsql.cn/article2/ddighic.html
成都網站建設公司_創新互聯,為您提供用戶體驗、App開發、移動網站建設、搜索引擎優化、靜態網站、網站收錄
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯