c語(yǔ)言中
我們提供的服務(wù)有:網(wǎng)站制作、成都做網(wǎng)站、微信公眾號(hào)開(kāi)發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、福清ssl等。為數(shù)千家企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的福清網(wǎng)站制作公司
函數(shù)聲明的時(shí)候,應(yīng)該說(shuō)明參數(shù)類型
上例中 num沒(méi)有指定類型;
至于N只是一個(gè)宏定義而已;編譯的時(shí)候會(huì)用10替代
void也是個(gè)類型,他可以是任何類型,由被引用對(duì)象的類型決定。而參數(shù)空表示沒(méi)有參數(shù),參數(shù)void表示還是有參數(shù)的
返回值跟形參沒(méi)有任何關(guān)系。如果函數(shù)的聲明只是fun()的話,證明返回值類型是void,就是沒(méi)有返回值。
那就得看有沒(méi)有傳入?yún)?shù)
/*1.無(wú)參函數(shù)的定義:如果函數(shù)不接收用戶傳遞的數(shù)據(jù),那么定義時(shí)可以不帶參數(shù),既是不用
添加參數(shù)列表。*/
#include?stdio.h
int?sum()
{
int?i,?sum=0;
for(i=1;?i=100;?i++){
sum+=i;
}
return?sum;
}
int?main()
{
int?a?=?sum();
printf("The?sum?is?%d\n",?a);
return?0;
}
/*2.有參函數(shù)的定義:如果函數(shù)需要接收用戶傳遞的數(shù)據(jù),那么定義時(shí)就要帶參數(shù),就是得加
參數(shù)列表*/
#include?stdio.h
int?max(int?a,?int?b)
{
if?(ab)
{
return?a;
}
else
{
return?b;
}
}
int?main(){
int?num1,?num2,?maxVal;
printf("Input?two?numbers:?");
scanf("%d?%d",?num1,?num2);
maxVal?=?max(num1,?num2);
printf("The?max?number:?%d\n",?maxVal);
return?0;
}
最后附上
函數(shù)定義的一般格式為:
返回值類型 函數(shù)名 (參數(shù)列表)
{
聲明
語(yǔ)句
}
c++/c所有的函數(shù)都是:
修飾字 返回值類型 函數(shù)名(參數(shù)列表)
無(wú)參的函數(shù)參數(shù)列表為空或?yàn)関oid比如
int* fun1();
double fun2(void);
無(wú)返回值就是類型為void比如
void fun3(int a);
void fun4(float* b);
首先道歉一下, 之前差點(diǎn)誤導(dǎo)你, 這幾天有事也沒(méi)看回復(fù)。
之前的回復(fù)有誤,這個(gè)特意溫故了一下指針的知識(shí),來(lái)重新更新一下答案。
真確的寫(xiě)法:
錯(cuò)誤的寫(xiě)法:
有上可知:
1、定義成void(*pf)()是不能接收f(shuō)un(int, char*)的, 必須要有相同的參數(shù)。
2、返回值定義成void類型是可以的,void是任意類型,可根據(jù)實(shí)際情況而變化。
以上是我對(duì)這個(gè)題目的理解,如果對(duì)你有幫助,青采納一下,謝謝。