有以下程序#include "stdio.h"void fun(int *a,int *b,int c){ c=*a+*b; }main(){ int a[2]
有以下程序#include "stdio.h"void fun(int *a,int *b,int c){ c=*a+*b; }main(){ int a[2]={6,9},c=0; fun(a,a+1,&c); printf("%d\n",c);}程序輸出的結(jié)果是 A.6 B.9C.0 D.15
正確答案:C函數(shù)的參數(shù)通常分為兩種:數(shù)值變量和指針變量。數(shù)值變量被函數(shù)調(diào)用后,函數(shù)內(nèi)的參數(shù)為該數(shù)值變量的副本。對(duì)副本的一切操作都不會(huì)影響到調(diào)用函數(shù)外原來(lái)的參數(shù)。指針變量在函數(shù)中傳遞的是對(duì)其存放地址的一份副本,該副本存放的地址與原來(lái)的指針?biāo)娴牡刂芬恢?。在函?shù)體內(nèi)修改指針存放的地址對(duì)應(yīng)的值與在函數(shù)體外對(duì)原參數(shù)的修改同樣有效,因?yàn)樵瓍?shù)也指向該地址。題目中的程序包括主函數(shù)main和fun函數(shù),其中fun函數(shù)為void型,不需要fun函數(shù)返回值。fun函數(shù)的形參為2個(gè)整型指針變量和1個(gè)整型變量。在main函數(shù)中調(diào)用fun
詞條內(nèi)容僅供參考,如果您需要解決具體問(wèn)題
(尤其在法律、醫(yī)學(xué)等領(lǐng)域),建議您咨詢相關(guān)領(lǐng)域?qū)I(yè)人士。