c++用指針交換數(shù)組的實例講解
對于指針一直很迷,今天看了一下指針交換數(shù)組,知識量很少,希望能幫助到大家。
利用指針來交換數(shù)組主要是為了節(jié)省時間嘛,有兩種交換方式
第一種是寫一個函數(shù)把數(shù)組傳過去然后用swap交換,即可
代碼如下:
#include<iostream>
#include<cstdio>
#include<ctime>
using namespace std;
int a[100000050],b[100000050];
void da(int *a,int *b)
{
swap(a,b);
cout<<a[1]<<" "<<b[1]<<endl;
}
int main()
{
double tmp=clock();
a[1]=1,b[1]=2;
da(a,b);
printf("%.2lf",(double)((clock()-tmp)/CLOCKS_PER_SEC));
return 0;
}
但是這樣的交換只在函數(shù)里有用,到主函數(shù)里還是相當(dāng)于沒有交換,所以我們還有另一種方法
#include<iostream>
#include<cstdio>
#include<ctime>
using namespace std;
int a[100000050],b[100000050];
int main()
{
double tmp=clock();
a[1]=1,b[1]=2;
int *op1=a;
int *op2=b;
swap(op1,op2);
cout<<op1[1]<<" "<<op2[1]<<endl;
printf("%.2lf",(double)((clock()-tmp)/CLOCKS_PER_SEC));
return 0;
}
代碼里都有時間函數(shù),讀者可以自己運行一下看看時間,應(yīng)該是0.00
以上這篇c++用指針交換數(shù)組的實例講解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
- 深入了解c++數(shù)組與指針
- 淺談C/C++中指針和數(shù)組的不同
- C#訪問C++動態(tài)分配的數(shù)組指針(實例講解)
- 基于C#調(diào)用c++Dll結(jié)構(gòu)體數(shù)組指針的問題詳解
- C/C++ 數(shù)組和指針及引用的區(qū)別
- C++中指針指向二維數(shù)組實例詳解
- C++中用new創(chuàng)建二維數(shù)組和指針數(shù)組實例代碼
- 圖文詳解c/c++中的多級指針與多維數(shù)組
- 詳解C++中的對象指針與對象數(shù)組
- 詳解C++中的指針結(jié)構(gòu)體數(shù)組以及指向結(jié)構(gòu)體變量的指針
- C++中字符串以及數(shù)組和指針的互相使用講解
- 詳解C++中的指針、數(shù)組指針與函數(shù)指針
- C++中的數(shù)組引用和指針引用
相關(guān)文章
C++繼承中的對象構(gòu)造與析構(gòu)和賦值重載詳解
這篇文章主要為大家詳細(xì)介紹了C++繼承中的對象構(gòu)造與析構(gòu)和賦值重載,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-03-03
C++之實現(xiàn)快速清空vector以及釋放vector內(nèi)存
這篇文章主要介紹了C++之實現(xiàn)快速清空vector以及釋放vector內(nèi)存方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-08-08

