C++——指针2-指向数组的指针和指针数组
2024-09-06 20:28:00
7.4 指向数组元素的指针
声明与赋值
例:int a[10], *pa;
通过指针引用数组元素,经过上述声明及赋值后:
*pa就是a[0],*(pa+1)就是a[1],... ,*(pa+i)就是a[i].
a[i], *(pa+i), *(a+i), pa[i]都是等效的。不能写 a++,不能给数组名赋值或者试图改变其值,因为a是数组首地址是常量。
例子:使用三种方法输出数组元素
使用数组名和下标 |
使用数组名指针运算 |
使用指针变量 |
int main() { int a[10]; int i; for(i=0; i<10; i++) cin>>a[i]; cout<<endl; for(i=0; i<10; i++) cout<<a[i];} |
int main() { int a[10]; int i; for(i=0; i<10; i++) cin>>a[i]; cout<<endl; for(i=0; i<10; i++) cout<<*(a+i);} |
int main() { int a[10]; int *p, i; for(i=0; i<10; i++) cin>>a[i]; cout<<endl; for(p=a; p<(a+10); p++) cout<<*p;} |
7.5 指针数组
指针数组的元素是指针型,例如:point *pa[2];由pa[0] ,pa[1]两个指针组成。
#include <iostream> using namespace std; int main() { int line1[]={1,0,0}; //声明数组,矩阵的第一行 int line2[]={0,1,0}; //声明数组,矩阵的第二行 int line3[]={0,0,1}; //声明数组,矩阵的第三行 int *p_line[3]; //声明整型指针数组 p_line[0]=line1; //初始化指针数组元素 p_line[1]=line2; p_line[2]=line3; cout<<"Matrix test:"<<endl; //输出单位矩阵 for(int i=0;i<3;i++) //对指针数组元素循环 { for(int j=0;j<3;j++) //对矩阵每一行循环 { cout<<p_line[i][j]<<" "; } cout<<endl; } }
#include <iostream> using namespace std; int main() { int array2[2][3]={{11,12,13},{21,22,23}}; //声明二维int型数组 for(int i=0;i<2;i++) { cout<<*(array2+i)<<endl; //输出二维数组第i行的首地址 for(int j=0;j<3;j++) { cout<<*(*(array2+i)+j)<<" "; } //逐个输出二维数组第i行元素值 //写成 { cout<<*array2[i][j]<<" "; }比较好。 cout<<endl; }
}//输出结果为:
0X0065FDE0
11,12,13
0X0065FDEC
21,22,23
最新文章
- 【转】Android SDK Samples,学习Android的好方法
- HDU 3966 Aragorn&#39;s Story 树链剖分+树状数组 或 树链剖分+线段树
- Dos学习笔记(3)attrib命令
- struts2.3.24 + spring4.1.6 + hibernate4.3.11+ mysql5.5.25开发环境搭建及相关说明
- 新浪网易淘宝等IP地区信息查询开放API接口调用方法
- gcc编译, gdb调试, makefile写法
- Asp.net绑定带层次下拉框(select控件)
- FlushMode属性与transaction(spring注入的事务)
- 解决:未能加载文件或程序集“Newtonsoft.Json, Version=4.5.0.0
- JQ插件开发方法
- Javascript多线程引擎(六)
- android移动开发学习笔记(二)神奇的Web API
- 2017<;java技术>;预备作业计科冀浩然
- zoj3204 Connect them 最小生成树
- Codeforces Round #326 (Div. 2) B
- ABP官方文档翻译 3.8 数据过滤器
- 从MySQL Bug#67718浅谈B+树索引的分裂优化(转)
- JS列表
- C# sha256 加密算法
- 【DeepLearning】Exercise: Implement deep networks for digit classification
热门文章
- uniapp简易直播
- Linux nohup不输出日志文件的方法
- 使用JDK工具进行Java服务器应用程序故障排除
- C#_.net core 3.0自定义读取.csv文件数据_解决首行不是标题的问题_Linqtocsv改进
- js对象模型3
- day16 匿名函数
- Debian 10 xfce 错误提示 ACCESS DENIED
- ora.vip 1 ONLINE INTERMEDIAT
- 剑指offer-面试题32-分行从上到下打印二叉树-二叉树遍历
- sql关系型运算符优先级高到低为:not >;and>; or