欧美大屁股bbbbxxxx,狼人大香伊蕉国产www亚洲,男ji大巴进入女人的视频小说,男人把ji大巴放进女人免费视频,免费情侣作爱视频

歡迎來到入門教程網(wǎng)!

C語言

當(dāng)前位置:主頁 > 軟件編程 > C語言 >

C++用指針變量作為函數(shù)的參數(shù)接受數(shù)組的值的問題詳細總結(jié)

來源:本站原創(chuàng)|時間:2020-01-10|欄目:C語言|點擊: 次

實參和形參的四種結(jié)合方式
實參 形參 實例
數(shù)組名 數(shù)組名 1.1
數(shù)組名 指針變量 1.2
指針變量 數(shù)組名 1.3
指針變量 指針變量 1.4

本文以輸入10個整數(shù),然后對其進行排序,然后輸出的程序為例:

形參為數(shù)組名,實參是數(shù)組名

實例代碼1.1:

復(fù)制代碼 代碼如下:

#include<iostream>
using namespace std;
int main(){
 void Sort(int a[],int n);
 int a[10],i;
 cout<<"Please input 10 interges: "<<endl;
 for(i=0;i<10;i++){
  cin>>a[i];
 }
 Sort(a,10);
 cout<<"Sorted order:";
 for(i=0;i<10;i++){
  cout<<a[i]<<" ";
 }
 cout<<endl;
 return 0;
}
void Sort(int a[], int n){
 int i,j,k,tool;
 for(i=0;i<n;i++){
  k=i;
  for(j=i;j<n;j++){
   if(a[j]<a[k])
   k=j;
  }
  tool=a[k];
  a[k]=a[i];
  a[i]=tool;
 }
}

形參中a[ ]中,可以不寫任何的數(shù)字,只需要表示這是一個數(shù)組即可。如果其中放數(shù)字的話,可以放置任何一個正整數(shù)(不一定等于實參數(shù)組的大小,可以比實參中的數(shù)組大或者?。?

即:

復(fù)制代碼 代碼如下:

void Sort(int a[], int n )

也可以寫成
復(fù)制代碼 代碼如下:

void Sort(int a[2], int n)

或者
復(fù)制代碼 代碼如下:

void Sort(int a[12], int n)

實參是數(shù)組名,形參是指針變量
實例代碼1.2:
復(fù)制代碼 代碼如下:

#include<iostream>
using namespace std;
int main(){
 void Sort(int a[],int n);
 int a[10],i;
 cout<<"Please input 10 interges: "<<endl;
 for(i=0;i<10;i++){
  cin>>a[i];
 }
 Sort(a,10);
 cout<<"Sorted order:";
 for(i=0;i<10;i++){
  cout<<a[i]<<" ";
 }
 cout<<endl;
 return 0;
}
void Sort(int *a, int n){
 int i,j,k,tool;
 for(i=0;i<n;i++){
  k=i;
  for(j=i;j<n;j++){
   if(a[j]<a[k])
   k=j;
  }
  tool=a[k];
  a[k]=a[i];
  a[i]=tool;
 }
}

在文章《C++一維數(shù)組和指針的關(guān)系總結(jié)》中,已經(jīng)提到數(shù)組名實際上代表數(shù)組的首元素的地址也就是說a等價于&a[0]

在實參中,數(shù)組名代表數(shù)組中的第一個元素的地址,所以實參實際上只傳遞了數(shù)組的第一個元素的指針。因此,在形參中,只需要一個指針變量來接受傳遞過來的值即可。

實參是指針變量,形參是數(shù)組

實例代碼1.3:

復(fù)制代碼 代碼如下:

#include<iostream>
using namespace std;
int main(){
 void Sort(int a[],int n);
 int a[10],i;
 cout<<"Please input 10 interges: "<<endl;
 for(i=0;i<10;i++){
  cin>>a[i];
 }
 Sort(&a[0],10);
 cout<<"Sorted order:";
 for(i=0;i<10;i++){
  cout<<a[i]<<" ";
 }
 cout<<endl;
 return 0;
}
void Sort(int a[], int n){
 int i,j,k,tool;
 for(i=0;i<n;i++){
  k=i;
  for(j=i;j<n;j++){
   if(a[j]<a[k])
   k=j;
  }
  tool=a[k];
  a[k]=a[i];
  a[i]=tool;
 }
}

跟上文分析的一致,通過&a[0]作為實參進行傳值,證明了數(shù)組名實際上代表數(shù)組的首元素的地址也就是說a等價于&a[0]

形參是指針變量,實參是指針變量

實例代碼1.4:

復(fù)制代碼 代碼如下:

#include<iostream>
using namespace std;
int main(){
 void Sort(int a[],int n);
 int a[10],i;
 cout<<"Please input 10 interges: "<<endl;
 for(i=0;i<10;i++){
  cin>>a[i];
 }
 Sort(&a[0],10);
 cout<<"Sorted order:";
 for(i=0;i<10;i++){
  cout<<a[i]<<" ";
 }
 cout<<endl;
 return 0;
}
void Sort(int *a, int n){
 int i,j,k,tool;
 for(i=0;i<n;i++){
  k=i;
  for(j=i;j<n;j++){
   if(a[j]<a[k])
   k=j;
  }
  tool=a[k];
  a[k]=a[i];
  a[i]=tool;
 }
}

這種方法是最直接了當(dāng)?shù)姆椒?,實參和形參的傳遞的數(shù)值和接受的數(shù)值都是指針

網(wǎng)頁制作CMS教程網(wǎng)絡(luò)編程軟件編程腳本語言數(shù)據(jù)庫服務(wù)器

如果侵犯了您的權(quán)利,請與我們聯(lián)系,我們將在24小時內(nèi)進行處理、任何非本站因素導(dǎo)致的法律后果,本站均不負任何責(zé)任。

聯(lián)系QQ:835971066 | 郵箱:835971066#qq.com(#換成@)

Copyright © 2002-2020 腳本教程網(wǎng) 版權(quán)所有