STM32—c语言指针1
一、指针基础
int a = 1;
int *p = &a;
要打印a : printf("%d\r\n",a);
printf("%d\r\n",*p);
要打印a的地址: printf("%p\r\n",&a);
printf("%p\r\n",p);
要打印p的地址: printf("%p\r\n",&p);
* : 声明(定义)指针 或 取值
& : 取址
二、数组基础:
1、char *str[3] ={“david”,“bp”,“zhendenp”}; (这个叫指针数组) 对的,这种多个字符串的数组只能用char指针数组定义
str[0] 为数组首个元素(“david”)的地址
str[1] 为数组第二个元素(“bp”)的地址
str[2] 为数组第三个元素(“zhendenp”)的地址
注意:不是&str[0],&str[0]是指针str[0]的地址,是指针的地址,不是指针指向的元素的地址。、
*str[0]为数组首个元素(“david”)的首个字母的值,可以理解为二维数组,david是第二层数组。
*str[1]为数组第二个元素(“bp”)的首个字母的值,可以理解为二维数组,bp是第二层数组。
*str[2]为数组第三个元素(“zhendenp”)的首个字母的值,可以理解为二维数组,zhendenp是第二层数组。

2、char str[3] ={“david”,“bp”,“zhendenp”}; 错的,这种多个字符串的数组只能用char指针数组定义

3、char str2[3] = {“daa”}; 对的,这个相当于str2[0]=“d”,str2[1]=“a”,str2[2]=“a”
其中str2和&str2[0]相等。都是数组首个元素(“d”)的地址

4、char str2[3] = {“dava”}; 错的,“dava”为4个字符,大于定义的str2[3]

#include "stm32f10x.h"
#include "bsp_usart.h"
char *str[3] ={"david","bp","zhendenp"};
int i;
int main(void)
{   for(i = 0; i<3;i++){printf("%s\r\n",str[i]);}for(i = 0; i<3;i++){printf("%c\r\n",*str[i]);}
}

串口输出:
david
bp
zhendenp
d
b
z


STM32---c语言指针1相关推荐

  1. STM32学习第三课:STM32 c语言学习基础3(内存操作、指针、结构指针)

    1.内存操作 在对内存操作头疼的时候我发现了这篇神奇的文章,拜读之后豁然开朗心生崇拜 数据指针 在嵌入式系统的编程中,常常要求在特定的内存单元读写内容,汇编有对应的MOV指令,而除C/C++以外的其它 ...

  2. c语言获取指针分配的字节数,c语言指针知识点总结(共6篇).docx

    c语言指针知识点总结(共6篇) C语言指针教学中的知识点分析与总结 摘要:分析指针的基本概念及指针在数组.函数.字符串.动态存储分配等方面的应用,提出指针教学过程中易混淆概念及注意事项,对初学者深入理 ...

  3. C语言指针数组与数组指针的区别

    C语言指针数组与数组指针的区别 首先,顾名思义 数组指针是一个指针,是指向一个数组的指针,如 int (a*)[5]:这就是一个指向含有5个元素的数组的指针 指针数组是一个数组,它包含的元素全是指针变 ...

  4. simple c语言,C语言——指针(simple).ppt

    C语言--指针(simple) 莆田学院计算机教研室 2003年5月 指 针 绍兴文理学院自动化教研室 2011年4月 本讲主要内容 指针概述 地址· 指针· 指针变量 指针变量作为函数参数 指针与数 ...

  5. c语言115写成16进制,C语言指针问题

    C语言指针问题 來源:互聯網  2009-04-01 16:01:29  評論 分類: 電腦/網絡 >> 程序設計 >> 其他編程語言 問題描述: int a=115,*p;p ...

  6. C语言指针总结大学霸IT达人

    C语言指针总结大学霸IT达人 C语言的指针是C语言区别其它语言的最主要的特定之一.有了指针,C语言就可以抛开所有束缚,直接对内存中的数据进行操作,这样,不单对数据的操作更加快捷,并且可以高效的利用空间 ...

  7. CPU 以字节为单位编址,而 C 语言指针以指向的数据类型长度作自增和自减。

    切记:CPU 以字节为单位编址,而 C 语言指针以指向的数据类型长度作自增和自减.

  8. c语言 指针函数 详解,[NOTE-C]C语言指针详解(一)

    C语言指针让一切想法变成可能,强转和指针可以看做一项呼风唤雨的利器,但是C语言中指针应用又需要格外的小心,其更灵活的利用内存,因为不当的应用可能引起各种异常,这篇文章就是让我们一起来认识C指针,更好的 ...

  9. c语言指针的相关运算,C语言指针的运算

    本文讨论使用指针进行的运算,最重要的运算是获取指针所引用的对象或函数.也可以比较指针,使用指针来遍历一个内存区域. 使用指针读取与修改对象 间接运算符 * 生成内存中的位置,该位置的地址存储在一个指针 ...

最新文章

  1. Pandas 基础 (1)—— Series
  2. Excel导入SQL数据库完整代码
  3. 在Nature都点赞的大会上,马斯克被「脑机接口之父」炮轰了:他说的话,我一个字都不认同...
  4. how to change logo in ae template
  5. boost::detail::lexical_cast_stream_traits用法的测试程序
  6. WannaCry警示:学会检测和减轻云端恶意内容
  7. quantaxis使用docker安装,解决了一个很奇特的问题
  8. J2EE开发工作中遇到的异常问题及解决方法总结
  9. 标记三维点_SSW系统在地下大型停车场三维建模中的应用研究
  10. [2005.04.24 20:47:26] 实践与思考之窥索[原创]
  11. apache ab 压测
  12. 如何在Sitecore CMS中打开内容编辑器
  13. 如何利用Camtasia为视频添加注释?
  14. java 字符串常量_Java字符常量详解
  15. 张云茹计算机,张云茹 - 重庆理工大学 - 药学与生物工程学院
  16. 神农班2019年总结
  17. NS2:添加一个新的流量发生器(poisson分布)
  18. IBM-kmeans-坏盘预测
  19. 人脂肪前体细胞,研究糖尿病胰岛抵抗、肥胖的优秀体外模型
  20. 137.菜单悬停放大特效

热门文章

  1. Adobe Premiere Pro 2020 入门教程(二)新建项目和软件界面的介绍
  2. 详解vue-element-admin 使用mock.js动态模拟数据
  3. Java异常的根类似_Java异常(Exception)类型及处理
  4. 2.3、JavaScript 数据类型 - 数字类型
  5. 2.1.4 超声波雷达
  6. list.isEmpty() CollectionUtils.isEmpty(list)区别?
  7. 【目标跟踪】基于迭代扩展卡尔曼滤波算法实现目标滤波跟踪(IEKF)附Matlab代码
  8. 电路模型和电路定律(Ⅲ)
  9. 正圆锥体空间方程_电路原理中三相缺相保护器是如何工作的,正负序与它有什么关系...
  10. 重启mysql的命令 linux_linux重启mysql命令