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

嵌入式day14

时间:2024-07-30 20:29:09浏览次数:15  
标签:返回 const 字节 迭代 嵌入式 day14 地址 指针

数组的遍历(指针)

迭代器([begin,end]):通过前一个元素找到了下一个元素(++),基于数组的有序性

递归调用逆序:

迭代器选择排序:

迭代器冒泡排序:

迭代器插入排序:

快排(qsort):

先设置基准数(begin),从右往左找,第一个比基准数小的数,从左往右找,第一个比基准数大的数,互换两个数,重复刚才的操作,直到p ,q 相遇,内层循环结束后,将p,q所指的元素与基准数交换

两个指针间不能进行加法,乘除求余运算

两个指针间减法(基类型必须一致),结果为int,其值为两个之间相差n个基类型

字符型指针

const :无法通过直接访问改变,但可以根据间接访问改变值

const int *p : 在指针变量前加const,修饰的是 *p(i),无法通过该指针修改它所指向的变量( i )(即只能读,不能写)

“Hello”为匿名数组,%p输出地址值为首地址H的地址

“Hello”在字符串常量区,只能读,不能写,*p无法修改

万能指针:void *p;(降低程序耦合性)

万能指针不能进行指针运算

内存拷贝:

在大字符串里找子字符串:

int subStr(const char *s, const char *sub)

返回指针值的函数

返回值为指针的函数,不能返回局部变量(动态生存区,已被销毁)

函数返回的地址值为当时传入的

malloc:

分配动态内存,参数为,需要的内存空间大小的字节,申请的字节一定是连续的,返回需要空间的首字节地址(申请的空间在堆区)

如果申请成功,返回空间的首字节地址,申请失败,返回一个空指针

需要手动归还,归还与申请的首地址要相同,释放结束后,置于空指针(NULL)

未销毁,称为内存泄漏

内存扩容:

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

嵌入式学习第14天,今天学习了字符型指针以及迭代器的使用,指针的使用进度又进一步,明天将迎来最难的指针部分的挑战,必须打起十二分的精神来,加油加油!

标签:返回,const,字节,迭代,嵌入式,day14,地址,指针
From: https://blog.csdn.net/weixin_70572180/article/details/140805595

相关文章

  • 嵌入式day13
    指针地址和指针的概念指针是用来装地址的数据类型,其是一个变量变量的地址和指向变量的指针变量一般形式:指针变量名符合标识符定义的一般规则int*p:*为类型标识符指针变量p指向i   整型是用来装整数的数据类型;   指针是用来装地址的数据类型希望......
  • 嵌入式初学-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`......
  • 代码随想录day14 || 226 翻转二叉树,101 对称二叉树, 104 二叉树的最大深度, 111 二叉树
    226翻转二叉树funcinvertTree(root*TreeNode)*TreeNode{ //思考,广度优先遍历,对于每一层,翻转其左右子节点 ifroot==nil{ returnnil } queue:=list.New() queue.PushBack(root) size:=1//存储每一层的节点个数 forqueue.Len()>0{ varcountint ......
  • Day14 二叉树Part2 递归的应用(二叉树相关)
    任务226.翻转二叉树给你一棵二叉树的根节点root,翻转这棵二叉树,并返回其根节点。思路逻辑上,我们知道用递归遍历一棵树,一定会遍历每个节点。因此在遍历的过程中处理即可。考虑递归基,即当节点为空时直接返回。考虑单层递归,为了反转二叉树,如何处理当前节点呢?即如何反转以当......
  • 使用带有 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、数组语法:类型说明符 数组名 [常量......