这篇文章主要讲解了“C++数组指针怎么实现”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C++数组指针怎么实现”吧!
int (*p)[10]是一个数组指针,但是这个指针不是指向数组的首地址,而是指向数组名的地址。
using arrT=int[10];
arrT*functions(arrT*arrs,size_ta_size){
int*p=(*arrs);
for(inti=0;i<a_size;i++){
//std::cout<<i<<std::endl; //正确的方式
*p=i;
p++;
//不能用下面的语句,(*arrs)++会报lvaluerequiredasincrementoperand错误,因为(*arrs)不是一个左值
//*(*arrs)=i;
//(*arrs)++;
}
returnarrs;
}
intmain()
{
int(*p)[10];
intarrs[]={1,2,3,4,5,0,0,0,0,0};
//不能是p=functions(arrs,10),因为是函数需要传一个数组指针而不是首地址指针
p=functions(&arrs,10);
for(autoc:(*p)){
std::cout<<c<<std::endl;
}
}
感谢各位的阅读,以上就是“C++数组指针怎么实现”的内容了,经过本文的学习后,相信大家对C++数组指针怎么实现这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。