一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

3天內不再提示

C語言-函數(shù)的定義、聲明、傳參

DS小龍哥-嵌入式技術 ? 來源:DS小龍哥-嵌入式技術 ? 作者:DS小龍哥-嵌入式技 ? 2022-08-14 09:57 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1. 前言

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

2. 函數(shù)在C語言里是什么概念?

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

3. 函數(shù)如何定義?如何編寫一個函數(shù)?

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

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

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

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

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

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

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

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

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

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

6. return 語句作用

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

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

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

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

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

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

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

8. 靜態(tài)變量

靜態(tài)變量聲明關鍵字: 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;  //靜態(tài)變量(局部全局變量)--生命周期
	b+=a;
	return b;
}
//函數(shù)調用完畢之后,函數(shù)占用的空間都會釋放

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

    關注

    180

    文章

    7632

    瀏覽量

    141548
  • 函數(shù)
    +關注

    關注

    3

    文章

    4379

    瀏覽量

    64784
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    函數(shù)定義是什么

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

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

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

    C語言函數(shù)的實驗詳細資料說明

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

    C語言函數(shù)參數(shù)關于值和指針有什么區(qū)別?

    C語言函數(shù)參數(shù)的值和指針有什么區(qū)別?
    的頭像 發(fā)表于 02-26 16:35 ?2564次閱讀

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

    本文檔的主要內容詳細介紹的是C語言聲明定義與引用說明
    發(fā)表于 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語言中的隱式函數(shù)聲明

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

    51單片機實戰(zhàn)教程之C語言基礎(五 C語言函數(shù)及其定義

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

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

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

    C語言總結_函數(shù)知識

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

    C語言總結_數(shù)組與函數(shù)練習題

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

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

    這篇文章介紹C語言函數(shù)的不定參數(shù)、可變參數(shù) 形,實現(xiàn)printf一樣的效果。
    的頭像 發(fā)表于 08-14 09:58 ?3158次閱讀

    C語言-指針作為函數(shù)類型

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

    C語言函數(shù)調用的形式及過程

    C語言函數(shù)調用時的數(shù)據(jù)傳遞 在調用有函數(shù)時,主調函數(shù)和被調
    的頭像 發(fā)表于 03-10 14:28 ?2279次閱讀

    C語言函數(shù)參數(shù)介紹

    C語言數(shù)組元素作函數(shù)實參 數(shù)組元素可以用作函數(shù)實參,不能用作形。 C
    的頭像 發(fā)表于 03-10 14:30 ?2945次閱讀

    C語言內部函數(shù)與外部函數(shù)介紹

    一般為了敘述方便,把建立存儲空間的聲明定義,而把不需要建立存儲空間的聲明稱為聲明。 在函數(shù)中出現(xiàn)的對變量的
    的頭像 發(fā)表于 03-10 14:36 ?1486次閱讀