在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

C語言-函數的定義、聲明、傳參

DS小龍哥-嵌入式技術 ? 來源:DS小龍哥-嵌入式技術 ? 作者:DS小龍哥-嵌入式技 ? 2022-08-14 09:57 ? 次閱讀

1. 前言

C語言里函數是非常重要的知識點,一個完整的C語言程序就是由主函數和各個子函數組成的,主函數調用子函數完成各個邏輯功能。

2. 函數在C語言里是什么概念?

函數相當于打包代碼的過程,程序代碼里如果有很多重復代碼,可以將重復代碼寫成一個函數,進行調用。
C語言程序里除了main函數(主)之外的函數都叫子函數,都屬于自定義函數。

3. 函數如何定義?如何編寫一個函數?

函數定于分為幾種情況:1. 有形參 2.無形參 3.有返回值 4. 無返回值

/*
<函數返回值類型> [函數的名稱](函數的形參類型)
{
	函數體
}
*/
void func1(void)
{
	
}
int func2(int a)
{
	return 12;
}
int func3(int a,int b,int c,.....)
{
	return 12;
}
void func4(char *p)
{
	
}

4.自定義的函數如何調用和聲明?

#include 
#include 
void func1(void); //提前聲明函數
int main()
{
	func1(); //調用函數
	return 0;
}
//定義函數
void func1(void)
{
	printf("hello\n");
}

如果在調用函數之前編寫函數體,就不需要聲明:

#include 
#include 
//定義函數
void func1(void)
{
	printf("hello\n");
}
int main()
{
	func1(); //調用函數
	return 0;
}

5. 函數如何傳入形參并接收返回值?

#include 
#include 
//函數聲明
int func(int a,int b); 
//int func(int,int); 

int main()
{
	int a;
	a=func(10,20); //調用函數
	printf("a=%d\n",a);
	return 0;
}

//計算a+b結果值
int func(int a,int b)
{
	int c;
	c=a+b;
	return c; //返回結果,并終止函數執行
}

6. return 語句作用

return 本身功能終止函數執行,順帶返回一個值給調用者。
語法: return [值或者是表達式或者不填]; 表達式: 12<34
并且return 函數每次只能返回一個值。

#include 
#include 
//函數聲明
void func(void); 
int main()
{
	func();
	return 0;
}

void func(void)
{
	printf("1234567890\n");
	return; //直接結束函數
	printf("ABCD\n");
}

7. 變量的作用域:局部變量、全局變量、塊級變量

全局變量: 將變量定義在函數體外就屬于全局變量。
局部變量: 將變量定義在函數體內就是屬于局部變量。
塊級變量: 就是在語句范圍內定義的變量。
if(a>b){int c;…. }

生命周期: 全局變量生命周期和main函數共存。

#include 
#include 
int a=100;
void func(void);
int main()
{
	int a=200;
	printf("a1=%d\n",a); //200   當局部變量和全局變量名稱相同的情況下優先使用局部變量
	a=400;
	printf("a2=%d\n",a); //400
	func();
	return 0;
}
void func(void)
{
	printf("a3=%d\n",a); //100
}

8. 靜態變量

靜態變量聲明關鍵字: static

#include 
#include 
int func(int a);
int main()
{
	int i;
	for(i=0;i<5;i++)
	{
		printf("%d\n",func(i));//01234   
	}
	return 0;
}

int func(int a)
{
	//int b=0; 局部變量
	static int b=0;  //靜態變量(局部全局變量)--生命周期
	b+=a;
	return b;
}
//函數調用完畢之后,函數占用的空間都會釋放

  審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • C語言
    +關注

    關注

    180

    文章

    7604

    瀏覽量

    136813
  • 函數
    +關注

    關注

    3

    文章

    4331

    瀏覽量

    62610
收藏 人收藏

    評論

    相關推薦

    函數定義是什么

    定義中的函數體再加上分號。函數聲明才可以調用,一個函數只可以定義一次,但是可以聲明多次。
    發表于 12-17 07:03

    C++語言入門教程之C++語言程序設計函數的詳細資料概述免費下載

    本文檔的主要內容詳細介紹的是C++語言入門教程之C++語言程序設計函數的詳細資料概述免費下載內容包括了:1
    發表于 09-20 14:51 ?23次下載

    C語言函數的實驗詳細資料說明

    實驗目的和要求(1)掌握C語言函數定義方法、函數聲明
    發表于 12-06 08:00 ?4次下載
    <b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>函數</b>的實驗詳細資料說明

    C語言函數參數關于值和指針有什么區別?

    C語言函數參數的值和指針有什么區別?
    的頭像 發表于 02-26 16:35 ?2233次閱讀

    C語言聲明定義與引用說明

    本文檔的主要內容詳細介紹的是C語言聲明定義與引用說明
    發表于 07-29 08:00 ?2次下載
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>的<b class='flag-5'>聲明</b>和<b class='flag-5'>定義</b>與引用說明

    剖析什么是C語言中的隱式函數聲明

    「1、什么是C語言的隱式函數聲明」 在C語言中,函數
    的頭像 發表于 05-25 09:38 ?3829次閱讀
    剖析什么是<b class='flag-5'>C</b><b class='flag-5'>語言</b>中的隱式<b class='flag-5'>函數</b><b class='flag-5'>聲明</b>

    51單片機實戰教程之C語言基礎(五 C語言函數及其定義

    雖然部分C語言函數的返回值與其參數存在對應關系,但是它與數學里的函數不是同一概念。有的書上把它定義為完成特定任務的代碼集合。
    發表于 11-21 09:51 ?31次下載
    51單片機實戰教程之<b class='flag-5'>C</b><b class='flag-5'>語言</b>基礎(五 <b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>函數</b>及其<b class='flag-5'>定義</b>)

    C語言函數定義、子函數的使用及變量的作用域

    這篇介紹C語言函數定義、子函數的使用。接著介紹變量的作用域,定義全局變量、靜態變量、只讀變量
    的頭像 發表于 04-28 11:23 ?6894次閱讀

    C語言總結_函數知識

    這篇文章介紹函數定義函數函數的返回值、變量的作用域、靜態、全局、局部變量的初始化默認
    的頭像 發表于 08-14 09:33 ?773次閱讀

    C語言總結_數組與函數練習題

    字符串標準處理函數介紹(string.h)、指針和數組當做函數,指針定義函數返回指針、void類型
    的頭像 發表于 08-14 09:36 ?831次閱讀

    C語言-函數的可變形(不定形)

    這篇文章介紹C語言函數的不定參數、可變參數 形,實現printf一樣的效果。
    的頭像 發表于 08-14 09:58 ?2672次閱讀

    C語言-指針作為函數類型

    C語言函數里最常用就是指針和返回地址,特別是字符串處理中,經常需要封裝各種功能函數完成數據處
    的頭像 發表于 08-14 10:05 ?1901次閱讀

    C語言函數調用的形式及過程

    C語言函數調用時的數據傳遞 在調用有函數時,主調函數和被調
    的頭像 發表于 03-10 14:28 ?1767次閱讀

    C語言函數參數介紹

    C語言數組元素作函數實參 數組元素可以用作函數實參,不能用作形C
    的頭像 發表于 03-10 14:30 ?2391次閱讀

    C語言內部函數與外部函數介紹

    一般為了敘述方便,把建立存儲空間的聲明定義,而把不需要建立存儲空間的聲明稱為聲明。 在函數中出現的對變量的
    的頭像 發表于 03-10 14:36 ?1179次閱讀
    主站蜘蛛池模板: 视频一区二区中文字幕| 国产内地激情精品毛片在线一| 国产精品久久久精品三级| 手机看片1024国产基地| 国产区一区二区三区| 理论片久久| 在线成人看片| 精品女视频在线观看免费| 人人干人| 99热最新在线| 黄色a毛片| 久久精品操| 最新版天堂资源中文官网| 久久大伊人| 精品福利在线视频| 亚洲综合色网| 成年人激情视频| 视频在线免费观看网址| 婷婷激情五月综合| 一级片影院| 亚洲精品播放| 久久久婷婷亚洲5月97色| 久久人人干| 午夜免费福利片| 夜夜爽影院| 欧美午夜寂寞影院安卓列表| 美女视频很黄很a免费国产 | 久久99热国产这有精品| 香蕉视频黄色在线观看| 成人精品视频一区二区三区| 国产女人小便视频| 女毛片| 久草资源在线播放| 五月婷婷一区二区| 午夜手机福利视频| 床上激情四射| 丁香六月色婷婷| 四虎免费大片aⅴ入口| 黄 色 片 在 线 看| 欧美最猛性xxxx免费| 欧美人成网站免费大全|