C++数组名做函数形参/指针
生活随笔
收集整理的這篇文章主要介紹了
C++数组名做函数形参/指针
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
數(shù)組名做函數(shù)形參
數(shù)組未開(kāi)辟空間時(shí)
#include <iostream>
using namespace std;
void test(int* a)
{*a = 0;*(a+1) = 1;*(a+2) = 2;cout<<a[0]<<a[1]<<a[2]<<endl;return;
}
int main(int argc,char* argv[])
{int* a;test(a);cout<<a[0]<<a[1]<<a[2]<<endl;return 0;
}
輸出為空,因?yàn)閍沒(méi)有開(kāi)辟內(nèi)存。
開(kāi)辟內(nèi)存時(shí)
#include <iostream>
using namespace std;
void test(int* a)
{*a = 0;*(a+1) = 1;*(a+2) = 2;return;
}
int main(int argc,char* argv[])
{int* a = new int[10];test(a);cout<<a[0]<<a[1]<<a[2]<<endl;return 0;
}
輸出為012,因?yàn)閍開(kāi)辟了內(nèi)存。
?
?
指針
指針變量所占內(nèi)存空間
指針自身也是一個(gè)變量類型,占8個(gè)字節(jié)。
#include <iostream>
using namespace std;
int main(int argc,char* argv[])
{cout<<sizeof(int*)<<endl;cout<<sizeof(double*)<<endl;cout<<sizeof(char*)<<endl;
}
指針數(shù)組/數(shù)組指針
指針數(shù)組 int* a[5] 是一個(gè)數(shù)組,數(shù)組內(nèi)部的變量為指針類型
數(shù)組指針 int (*a)[5] 是一個(gè)指針,指針指向數(shù)組類型變量
#include <iostream>
using namespace std;
int main(int argc,char* argv[])
{// 指針數(shù)組int a = 1;int b = 2;int* a_ptr = &a;int* b_ptr = &b;int* type1[2] = {a_ptr,b_ptr};cout<<*type1[0]<<endl;// 數(shù)組指針int(*c)[2];int d[2] = {1,2};c = &d;cout<<*(*c+1);
}
總結(jié)
以上是生活随笔為你收集整理的C++数组名做函数形参/指针的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 求一个好听的帅哥名字
- 下一篇: np.dot()运算准则