c之指针与数组(1)
1.指针与地址
一元运算符&可用于取一个对象的地址。例如:int i=1;&i就是计算机地址。
一元运算符*是间接寻址或者间接引用运算符。例如:
int x=1,y;int ip*;
ip=&x
y=*ip;
2.指针与函数参数
c语言是以传值的方式将参数值传递给被调用函数,因此被调用函数不能直接修改主调函数中变量的值。例如:
void swap(int x,int y) {int temp;temp=x;x=y;y=temp }
swap不能交换两个变量x,y的值。
可以使主调程序将指向所要交换的变量的指针传递给被调用函数,即swap(&a,&b);
void swap(int *px,int *py) {int temp;temp=*px;*px=*py;*py=temp }
3.指针与数组
int a[10];
int *pa;
pa=&a[0]//指针pa指向数组a的第一个元素的地址。等同于pa=a;
&a[2]=a+2;
例如返回字符串s的长度:
int strlen(char *s) {int n;for(int i=0;*s!='\0';s++)n++; return n; }
在函数定义中,形式参数char s[];和char *s;是等价的。
转载于:https://www.cnblogs.com/davidwang456/p/3456930.html
c之指针与数组(1)相关推荐
- char *a 和char a[] 的区别(指针和数组的区别)
2019独角兽企业重金招聘Python工程师标准>>> 在C/C++中,指针和数组在很多地方可以互换使用,这使得我们产生一种错觉,感觉数组和指针两者是完全等价的,事实上数组和指针是有 ...
- 用指针查找数组中温度值为32的天数
<程序设计基础实训指导教程-c语言> ISBN 978-7-03-032846-5 p92 5.1.2 上级实训内容 [实训内容4]假设一个数组用于存储一周7天,每天24小时温度的度数,数 ...
- 浅谈C中的指针和数组(一)
本文转载地址:http://www.cnblogs.com/dolphin0520/archive/2011/11/09/2242138.html 在原文的基础上加入自己的想法作为修改. 指针是C/C ...
- IOS笔记-C语言中的指针与数组
1.指针与数组 1)指针与一维数组 i.数组指针(指向数组元素的指针) 类型 *指针变量名: 指针定义完成后要初始化(不想让指向任何内容,=0,=NULL) int a[10]; int *p = ...
- C语言杂谈:指针与数组 (上) (转)
转自:http://blog.jobbole.com/86400/ 介绍 1> 指针定义:指针是保存变量地址的变量. 2> 本文重点 >> 指针与数组之间的关系 >> ...
- 国2c语言中指针与数组的赋值运算,C语言到汇编-指针与数组2
本章剩下的内容主要有: 1.指针与数组 & 地址算术运算 2.字符指针与函数 3.多维数组 & 指针与多维数组 4.指向函数的指针 每个内容举一个例子,第一个例子: int a[10] ...
- 【C 语言】数组与指针操作 ( 数组符号 [] 与 指针 * 符号 的 联系 与 区别 | 数组符号 [] 与 指针 * 符号 使用效果 基本等价 | 数组首地址 与 指针 本质区别 )
文章目录 前言 一.数组符号 [] 与 指针 * 符号 使用效果 基本等价 二.数组首地址 与 指针 本质区别 前言 参考 [C 语言]指针 与 数组 ( 指针 | 数组 | 指针运算 | 数组访问方 ...
- 【C 语言】指针 与 数组 ( 指针 | 数组 | 指针运算 | 数组访问方式 | 字符串 | 指针数组 | 数组指针 | 多维数组 | 多维指针 | 数组参数 | 函数指针 | 复杂指针解读)
相关文章链接 : 1.[嵌入式开发]C语言 指针数组 多维数组 2.[嵌入式开发]C语言 命令行参数 函数指针 gdb调试 3.[嵌入式开发]C语言 结构体相关 的 函数 指针 数组 4.[嵌入式开发 ...
- 指针和数组的区别是什么?
指针和数组的区别是什么? 其实数组是一个地址,指针则是指向地址的地址. 举个例子: char array[10]; char *pt; pt=array; char array[10];的含义是,在内 ...
- 指针数组、数组指针、数组的区别与联系
指针数组.数组指针.数组的区别与联系! 一:基本定义 1.指针数组 char *arr[4] = {"hello", "world", "shannx ...
最新文章
- 739. Daily Temperatures
- Android4.0源码Launcher启动流程分析【android源码Launcher系列一】
- SAP Cloud for Customer的Contact和Account的从属关系
- C#替换字符串起始/结尾指定的字符串
- 高效使用Bitmaps(一) 大Bitmap的加载
- mapreduce引用第三方jar
- 说说我心中的Linux系统
- ffmpeg开源工具的使用_如何使用开源工具和最佳实践提高在线隐私
- 卖不动了,5G资费套餐再降价,网友:再等等再等等
- 三星电子首次公布李在镕薪酬 看起来一点儿也不高
- 【深度优先搜索】计蒜客:正方形
- 用AD9画51单片机的最小系统
- Mac OS X新手入门
- mysql 两阶段加锁_MySQL的两阶段加锁协议
- 以图搜图(基于 Milvus 和 VGG 实现以图搜图)
- Qlv转换MP4格式 让你不再错过
- 文明与征服阵容搭配,文明与征服阵容推荐
- redis中数据倾斜问题的产生和解决方案
- java http ipv6_Java支持IPv6研究
- mac系统共享服务器,mac 链接共享服务器
热门文章
- cad指示箭头快捷键命令_CAD快捷键命令大全
- 教师提升微能力_分层分类培训,助力学校教师团队能力提升
- java 制作报表案例_javaweb项目报表案例
- 在markdown中设置字体颜色以及背景颜色
- opencv 的特征提取算子SIFT/ORB/SURF
- sklearn.preprocessing.PolynomialFeatures
- pytorch 入门(二) cnn 手写数字识别
- 32. Leetcode 141. 环形链表 (链表-双指针-环形链表)
- pycharm连接到gitee的操作
- Batch Normalization的细致理解