首页 > 其他分享 >嵌入式day13

嵌入式day13

时间:2024-07-30 20:28:55浏览次数:18  
标签:函数 数据类型 嵌入式 地址 day13 类型 指针 变量

指针

地址和指针的概念

指针是用来装地址的数据类型,其是一个变量

变量的地址和指向变量的指针变量

一般形式:

指针变量名符合标识符定义的一般规则

int *p :* 为类型标识符

指针变量 p 指向 i

      整型是用来装整数的数据类型;

      指针是用来装地址的数据类型

希望用指针变量 p来访问 i

*p就是 i 本身

i = 100 :  直接访问

*p = 100 :间接访问

用途:为了在被调函数中修改主调函数的值

int *t: 野指针(疯指针)

导致程序报错

注意:

保存地址与基类型相同

要清晰指针变量指向谁

指针内部实现逻辑:

1、通过指针变量中的值到内存空间中定位;

2、从定位处开始向后偏移sizeof(基类型);

3、将偏移好的那部分内存空间当作是一个基类型变量来看。

指针的强制类型转换:

if (*p == 1)则系统为小端

对指针进行加法运算,结果与其基类型有关

向后偏移 n * sizeof(基类型)个字节

& 与 * 在一起时可以相互抵消

p为指针变量,不能a++是因为a为常量

#define NULL 0(不带参宏)

指针置为空指针表示当前指针变量不可进行指针访问

指针函数:返回值是指针的函数

--------------------------

嵌入式学习第十三天,今天开始正式进入指针的学习,其80%的作用为获取变量地址,以便在被调函数中修改主调函数,要注意指针的内部实现逻辑,以便更好地理解指针,运用指针。后面几天还会继续学习指针的知识和其他用法,继续加油!

标签:函数,数据类型,嵌入式,地址,day13,类型,指针,变量
From: https://blog.csdn.net/weixin_70572180/article/details/140776054

相关文章

  • 嵌入式初学-C语言-练习二
    #针对于前六篇学习所出习题,题型内容均为本人敲写,若有不合理,或逻辑重复,请多多包涵,也请大家指点!!#1、通过键盘输入一个年份,判断是不是润年,是显示“是润年”,否则显示“不是润年”#include<stdio.h>intmain(){unsignedintyears;printf("输入一个年份\n");scanf("%d......
  • 嵌入式必备知识总结(一)
    计算机系统结构    计算机系统结构是计算机科学中的一个重要领域,研究计算机系统的设计和组织。计算机系统结构主要关注以下几个方面:1.计算机硬件组成a.中央处理单元(CPU)CPU是计算机的核心,负责执行指令并控制其他硬件组件。算术逻辑单元(ALU):执行算术和逻......
  • 【嵌入式】C51 和标准 C 语言的关键字对比详解
    目录C51和标准C语言的关键字对比详解1.概述2.C51和标准C语言的关键字对比2.1关键字对比表2.2对比表详细解释2.2.1C51特定关键字2.2.2标准C语言关键字2.3C51特定关键字2.4标准C语言关键字3.示例详细解释3.1C51特定关键字`bit``sfr``sbit``data`......
  • 使用带有 pythonKit XCODE 的嵌入式 Python,在 iOS 应用程序中与 OpenCV-python 签名不
    我根据Beewares使用指南在XCODE中将Python嵌入到我的iOS项目中https://github.com/beeware/Python-Apple-support/blob/main/USAGE.md运行时,我得到pythonKit找不到由ultralytics导入的cv2错误。当我将OpenCV-python添加到我的app_packages文件夹时......
  • 关于嵌入式QML dict_pinyin.dat的编译更新
    硬件平台:全志的A40I-H 软件平台:Linux内核版本3.10.65QT版本:5.9.0 重新编译dict_pinyin.dat的作用 1.解决输入"nss"导致输入法崩溃的问题2.解决输入某些嵌入式平台不支持的字体,例如“捃”,导致程序崩溃的问题 源码路径:~/qt-everywhere-opensource-src-5.9.0/qtvirtual......
  • 嵌入式学习之路 6(C语言基础学习——循环控制)
    目录一、构成循环的要素二、循环语句1、while(表达式)2、do-while3、for循环4、break和continue一、构成循环的要素1、在C语言中,构成循环的要素主要包括以下几个方面:1. 循环控制变量:用于控制循环的执行次数和条件。它通常在循环开始前进行初始化,并在每次循环迭代中进......
  • 嵌入式学习之路 7(C语言基础学习——数组)
        数组是一组相同类型数据的集合,也是一组相同类型变量的集合,同时数组本身也是一种数据类型。    在需要定义多个相同类型的产量时,按照以往的方法一个一个定义就相当繁琐,而数组可以批量处理多个数据。一、一维数组1、数组语法:类型说明符 数组名 [常量......
  • DAY13 二叉树part01
     今日任务 二叉树的递归遍历(前中后)二叉树的迭代遍历(前中后)二叉树的统一迭代遍历二叉树的层序遍历(共十道题目)完成情况递归已掌握,代码略迭代前中手写一编,后和统一未学习层序遍历题目如下102.二叉树的层序遍历1/**2*Definitionforabinarytreenode.3*s......
  • 嵌入式工业开发板基础测试手册——基于NXP iMX6ULL开发板(1)
    前言本文档适用开发环境:Windows开发环境:Windows764bit、Windows1064bit虚拟机:VMware15.1.0Linux开发环境:Ubuntu18.04.464bitU-Boot:U-Boot-2020.04Kernel:Linux-5.4.70LinuxSDK:5.4.70_2.3.0进行本文档操作前,请先按照调试工具安装、Linux开发环境搭建相关文档,安装Se......
  • 嵌入式基础测试手册——基于NXP iMX6ULL开发板(4)
    前言 本文档适用开发环境:Windows开发环境:Windows764bit、Windows1064bit虚拟机:VMware15.1.0Linux开发环境:Ubuntu18.04.464bitU-Boot:U-Boot-2020.04Kernel:Linux-5.4.70LinuxSDK:5.4.70_2.3.0基于测试板卡:创龙科技TLIMX6U-EVM是一款基于NXPi.MX6ULL的ARMCortex......