W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
C中的聲明函數(shù)可以寫成如下
void foo(){ printf("foo() was called\n"); }
我們把這個(gè)函數(shù)放在main()函數(shù)上面。 然后,我們可以調(diào)用這個(gè)函數(shù),forinstance foo()。
#include <stdio.h>
//w w w. jav a 2 s . com
void foo(){
printf("foo() was called\n");
}
int main(int argc, const char* argv[]) {
foo();
return 0;
}
上面的代碼生成以下結(jié)果。
我們還可以在main()函數(shù)的下面聲明一個(gè)函數(shù),但是我們必須聲明我們的函數(shù)名。
#include <stdio.h>
/*from www. ja v a2 s . c om*/
// implicit declaration for functions
void boo();
int main(int argc, const char* argv[]) {
boo();
return 0;
}
void boo(){
printf("boo() was called\n");
}
上面的代碼生成以下結(jié)果。
您可能需要?jiǎng)?chuàng)建一個(gè)具有參數(shù)和返回值的函數(shù)。
這很容易因?yàn)槟阒皇钦{(diào)用return進(jìn)入你的函數(shù)。
#include <stdio.h>
/*from w w w . j a v a2s .c o m*/
// implicit declaration for functions
int add(int a, int b);
int main(int argc, const char* argv[]) {
int result = add(10,5);
printf("result: %d\n",result);
return 0;
}
int add(int a, int b){
return a + b;
}
上面的代碼生成以下結(jié)果。
我們也可以聲明一個(gè)函數(shù)帶有數(shù)組作為參數(shù)。
要知道數(shù)組大小,你的函數(shù)應(yīng)聲明數(shù)組大小。
將此代碼寫入程序以進(jìn)行說(shuō)明。
#include <stdio.h>
/* ww w.j ava 2s .com*/
// implicit declaration for functions
double mean(int numbers[],int size);
int main(int argc, const char* argv[]) {
int numbers[8] = {8,4,5,1,4,6,9,6};
double ret_mean = mean(numbers,8);
printf("mean: % .2f\n",ret_mean);
return 0;
}
double mean(int numbers[],int size){
int i, total = 0;
double temp;
for (i = 0; i < size; ++i){
total += numbers[i];
}
temp = (double)total / (double)size;
return temp;
}
上面的代碼生成以下結(jié)果。
我們可以將指針作為參數(shù)傳遞給我們的函數(shù)。
為了說(shuō)明,我們可以創(chuàng)建swap()交換我們的價(jià)值觀。
#include <stdio.h>
/*w w w . ja va 2 s .c om*/
// implicit declaration for functions
void swap(int *px, int *py);
int main(int argc, const char* argv[]) {
int *x, *y;
int a, b;
a = 10;
b = 5;
// set value
x = &a;
y = &b;
printf("value pointer x: %d \n",*x);
printf("value pointer y : %d \n",*y);
swap(x,y);
printf("swap()\n");
printf("value pointer x: %d \n",*x);
printf("value pointer y : %d \n",*y);
return 0;
}
void swap(int *px, int *py){
int temp;
// store pointer px value to temp
temp = *px;
// set pointer px by py value
*px = *py;
// set pointer py by temp value
*py = temp;
}
上面的代碼生成以下結(jié)果。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: