C語言中函數有多個返回值的實現


在C中,正常情況下,我們只能從函數中返回一個值。但在有些情況下,我們需要從函數中返回多個值,此時使用數組或指針能夠很好地完成這樣的任務。這里是一個示例,這個程序使用一個整型數組作為參數,並將數組元素的和與積返回給調用函數。下面是C代碼,這是一種常見情況。下面給出實現技巧:

1.    #include
2.    #include
3.    int* Pool(int array[],int size) 
4.    { 
5.       int *x; 
6.       int i=0; 
7.       int a[2]={0,1}; 
8.       for(i=0;i
9.       { 
10.        a[0]+=array[i]; // 存儲數組元素值的和
11.        a[1]*=array[i]; // 存儲數組元素值的積
12.     } 
13.     // 將數組的基地址賦值給整型指針
14.     x=&a[0];  
15.     // 返回整個數組 
16.     return x; 
17.  } 
18. 
19.  int main() 
20.  { 
21.     int a[]={1,2,3,4}; 
22.     int *c; c = Pool(a,4); 
23.     printf("Sum = %d\nProduct = %d\n",c[0],c[1]); 
24.     getch(); 
25.     return 0; 
26.  }

這樣,我們就知道如何使用數組和指針從C函數中返回多個值。在很多情況下你會發現這個技巧很有用。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM