自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 结构体指针定义的时候分配内存吗?

在C或C++中,当定义一个结构体指针时,实际上并没有为结构体本身分配内存。指针本身是一个变量,它存储的是内存地址,而不是结构体数据本身。因此,仅仅定义一个结构体指针并不会在内存中为结构体分配任何空间。它可能包含任何随机的内存地址(即所谓的“野指针”),直到显式地让它指向某个有效的内存地址。注意,在使用完结构体后,应该释放分配的内存以避免内存泄漏。是一个指针变量,它还没有被初始化为指向任何有效的。(在C++中)这样的函数或操作符。要为结构体分配内存,需要使用。在C++中,通常会使用。

2024-08-19 23:23:53 127

原创 QT图片浏览器

链接:https://pan.baidu.com/s/1aobjfY3nmJ_zdg6vFeOgnQ。2、通过鼠标滚轮或者按键实现图像的放大、缩小,上下左右移动;1、实现文件下的jpg、bmp、png类型的图像查看;3、通过文件名称列表选择图像进行浏览;

2023-12-06 19:13:25 79 3

原创 char *p和 char p[]的大小

【代码】char *p和 char p[]的大小。

2023-04-18 09:54:55 230

原创 代码段 数据段 BSS段 栈区堆区的区别?

事实上,运行态严格来说不是真正的物理存储结构,而是linux 为每个进程虚拟的地址空间(32位 操作系统对进程而且是虚拟的4G地址空间)。如有错误,欢迎指正!相关段总结如下。

2023-04-14 11:53:03 179

原创 Nand,iNAND和NOR flash有什么区别?

这时NANDFlash中的前4K就是启动代码(他的功能就是初始化硬件然后在把NANDFlash中的代码复制到RAM中,再把相应的指针指向该运行的地方)为什么会有这两种启动方式,关键还是两种flash的不同特点造成,NOR FLASH容量小,速度快,稳定性好,输入地址,然后给出读写信号即可从数据口得到数据,适合做程序存储器。在arm开电的时候,要想让arm知道以某种方式(地址映射方式)运行,不可能通过你写的某段程序控制,因为这时候你的程序还没启动,这时候arm会通过引脚的电平来判断。

2023-03-19 17:23:26 274

原创 数组指针与数组名

数组指针指向的是数组中的一个具体元素,而不是整个数组,所以数组指针的类型和数组元素的类型有关,p 如果指向的数组元素是 int 类型,p 的类型必须也是int *。p 并不知道它指向的是一个数组,p 只知道它指向的是一个整数,究竟如何使用 p 取决于程序员的编码。不同的是,数组名是常量,它的值不能改变,而数组指针是变量(除非特别指明它是常量),它的值可以任意改变。也就是说,数组名只能指向数组的开头,而数组指针可以先指向数组开头,再指向其他元素。

2023-02-21 09:28:11 111

原创 结构体的大小如何计算?

仔细看看后两个原则,要满足偏移量是成员的整数倍,ch1偏移量是0,i的偏移量不可能是1,因为1不是i大小4的倍数,所以i的偏移量是4,ch2的偏移量就变为了8,加ch2是9,要满足结构体大小是成员大小整数倍,就是12。这个结构体的大小是20,先看前两个成员,大小是8,毋庸置疑,这个char类型的数组,只需要把它看做十个char连在一起即可,加起来就是18,再满足结构体大小为成员整数倍,所以大小就是20。一,结构体变量的首地址,必须是 min("结构体最宽基本类型成员", 指定对齐方式) 大小的整数倍。

2022-11-20 17:06:17 182 1

原创 C语言类型的存储

对于float和double这种浮点型的数,在内存中的存储方式和整形不一样,所以float和int相比,虽然都是4和字节,但是在内存中存储的方式完全不同,所以同一个4字节的内存,如果是按照interesting存放的,取的时候一定要按照int型的方式去取,如果存的时候和取得时候理解的方式不同,那数据就会出错。void * 是void类型的指针,void类型的指针的含义是:这是一个指针变量,该指针指向一个void类型的数,这个void类型的数可能是int、也可能是float、也可能是结构体。

2022-11-02 20:02:29 132

原创 nandflash

闪存存储器主要分为NOR型和NAND型两种,NOR型闪存有独立的地址线和数据线,它支持按位进行访问,具有高可靠性且随机读取速度较快,但NOR闪存的擦除和写操作速度较慢、容量小、价格昂贵,主要用于存储程序代码并在内存中直接运行。NAND闪存相对于NOR型闪存拥有更大的容量,适合进行数据存储。此外,它类似于传统的机械硬盘,对于小数据块的操作较慢,对于大数据块操作较快。MLC技术具有显著的存储密度优越性,相对于SLC每个单元仅能存储1位比特,MLC可以存储多位比特,但MLC在速度和可靠性方面还有一定的提升空间。

2022-11-02 17:28:55 589

原创 fastboot介绍

fastboot下载时要注意1:fastboot是使用USB线进行数据传输的,所以fastboot执行之前要先连接开发板和主机之间的usb线。fastboot是uboot中用来快速下载镜像的一个命令,fastboot同时还是一个windows上的软件。fastboot devices 命令用来查看当前连接的设备。(我们开发板看到的是:SMDKC110-01)fastboot flash xxx 命令用来烧录的。fastboot reboot 命令用来重启系统。fastboot下载时要注意2:需要安装驱动。

2022-10-14 14:59:54 1061 1

原创 内核版本号、SoC版本号和芯片型号区别

1、arm内核版本号和SoC版本号是由arm公司确定的,而SoC型号是由半导体公司确定的;高性能的A内核,如苹果、高通骁龙、华为麒麟9、三星猎户座的芯片都是基于ARM的A内核设。2、cortex系列后的ARM产品线分成3各系列,这个是市场细分的需要和选择;3、ARM已经发布了一些64位架构如A53等,主要是面向高性能服务器类应用。它们都使用精简指令集,他们也都是32/64bit的内核架构。ARM 架构又分为三种主要内核A、R、M,性能依次排列。高实时性的R内核,针对高实时性设计。

2022-10-13 12:04:20 1037

原创 S5PV210开发板刷机,secureCRT连接串口时报错,SD checksum Error,SD Init Error,Uart negotiation Error!

原因:后来发现之前是用SD卡启动的(模拟SD卡启动的时候已经把inand中的uboot第一个扇区毁坏了),之后学习LED时又用SD烧录了LED的程序,把原来SD中的启动程序覆盖了,所以导致不能启动。插入SD卡,重新启动(拨码开关拨到SD 卡启动),这时secureCRT窗口就显示连接成功。解决方法:重新往SD烧录启动用的uboot.bin。

2022-09-14 13:55:27 621

转载 RAM、ROM、Flash

Flash Memory,属于非易失性存储设备(Non-volatile Memory Device),Flash的内部存储是MOSFET,里面有个悬浮门(Floating Gate),是真正存储数据的单元。对于数据的表示,单个存储单元中内部所存储电荷的电压,和某个特定的阈值电压Vth,相比,如果大于此Vth值,就是表示1,反之,小于Vth,就表示0;对于nand Flash的数据的写入1,就是控制External Gate去充电,使得存储的电荷够多,超过阈值Vth,就表示1了。用来存储和保护数据。

2022-09-11 21:19:34 396

原创 S5PV210开发板刷机(SD卡uboot、fastboot刷机方法介绍)

文件在..\朱有鹏嵌入式\X210光盘资料\B盘\linux\QT4.8\image文件夹下面:uboot_inand.bin、zImage-qt、rootfs_qt4.ext3。其实,刷机是对210开发板的一个基础学习,目的是实践之前学过的系统启动过程,进一步的了解系统的启动过程,加深理解(uboot、kernel、rom)。\朱有鹏嵌入式\X210光盘资料\B盘\linux\QT4.8\image)2、USB-OTG驱动:需要在进入fastboot模式下进行,在后续的步骤中,会详细讲解。........

2022-08-29 13:41:56 3273

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除