C语言
文章平均质量分 69
分享工程实践中常见的C语言痛点
渣渣小码
渣渣小码
展开
-
C语言基础简述(一)
C语言基础简述(一)原创 2023-10-29 13:56:43 · 160 阅读 · 0 评论 -
问题:C语言越界访问数组不报错
C语言越界访问数组不报错原创 2023-07-19 16:29:48 · 1170 阅读 · 0 评论 -
C语言的字节对齐
一、基本概念1. 什么是自然对齐对于一个存储在内存中的变量,如果它的内存地址等于该变量长度的整数倍,则称该变量是自然对齐的。例子:对于32位的CPU,如果一个int型变量A的地址是0x00000004,A是自然对齐。2. 关于CPU存取数据的效率问题假设有一片连续的内存地址,如下图:每个地址上可存储1个字节的数据。例子:以32位的CPU为例,32位的CPU,默认是4字节[32 / 8 = 4]对齐。当整型数据A的存储起始地址为0x2,则它在内存中的数据占据了4..原创 2021-01-19 09:37:29 · 2916 阅读 · 0 评论 -
(三) C语言求字符串的长度
三、C语言求字符串的长度1. sizeof()与strlen()的区别(1) sizeof是运算符,求变量、数组或者数据类型在内存中的实际长度,这是在编译阶段就已经确定了的一个数值。它的参数可以是变量[普通变量,指针变量]、数组名或者数据类型。示例程序1: const char *str_ptr0 = "123456"; char ch_1 = '1'; char str_buff_2[]="123456789"; char str_buff_3[11]="12原创 2020-12-23 09:10:48 · 813 阅读 · 0 评论 -
(二) C语言的字符串
上一篇:https://blog.csdn.net/qq_40088639/article/details/111562273二、C语言的字符串1. C语言的字符串构成字符串由零个或多个字符组成,使用双引号括起来(单个字符,使用的是单引号括起来),并且是一个有限的字符序列。比如:"hello world"、"字符串"、"12345678"。对于单个字符,使用双引号括起来,也是一个字符串,比如:"A"、"8"。2. 字符串的存储计算机使用的是一片连续的内存来存储一个字符串,因为字符串.原创 2020-12-22 17:29:18 · 515 阅读 · 0 评论 -
(一) C语言的字符
一、C语言的字符1. C语言不存在字符串类型C语言有字符类型,也就是char类型,char类型的数据占内存大小为1字节。C语言中不存在字符串类型!2. C语言涉及的常见字符集字符是一种图形符号,不同国家不同地区都有自己特殊的字符,于是就衍生了“字符集合”这个名词。其中ASCII (American Standard Code for Information Interchange: 美国信息交换标准代码)是国际通用的标准字符集,在网上随时可以找到标准ASCII表格(http://c.b.原创 2020-12-22 17:18:57 · 19895 阅读 · 0 评论 -
关于Linux中的打印等级
1. 关于打印等级头文件:#include <logging/sys_log.h>四个打印都有不同的等级定义,注意看数值!内核中源码定义如下。在应用中,在不同的源文件中可自由设定等级,对SYS_LOG_LEVEL进行重复宏定义即可。当前文件定义的打印等级要大于或等于系统设定的打印等级,打印才会生效。即比较数字,数字小则等级大,就能打印出来。2. 关于打印信息的颜色显示由该配置项来决定是否显示不同打印等级信息的不同颜色:CONFIG_SYS_LOG_SHOW...原创 2020-11-17 11:20:14 · 1946 阅读 · 0 评论 -
C语言打印额外信息(文件名/函数名/行号/时间信息)
在开发时,除了格式化输出需要打印的目标数据外,如果工程大,原代码文件多,我们还需要打印出一些额外的信息。比如:xxx错误是发生在xxx函数内部,除了打印错误信息,还要指明是在哪个函数内部出错,方便跟踪和调试。1. 标准库中一些特殊的宏 __FILE__:文件名(字符串) __FUNCTION__ or __func__:函数名(字符串) __LINE__:当前打印函数所在的行号(整型数据) __DATE__:当前日期(和系统有关,是字符串) __TIME__:.原创 2020-11-17 10:45:48 · 707 阅读 · 0 评论 -
关于CPU的大小端存储模式
关于CPU的大小端存储模式决定因素CPU是大小端存储的决定因素,编译器和操作系统仅仅是为了适配CPU。CPU为什么会有大小端存储模式在计算机中,数据存储的基本单位(也叫最小单位)是字节,每个存储单元(一个地址单元)上可以存储一个字节的数据。以C语言为例,char类型的数据就是一个字节,但是其他的数据类型就不止一个字节,比如int类型的数据是4个字节,short类型(short int)是2字节,long类型(long int)是8/4字节(与编译器的数据模型相关),long long数据类.原创 2020-10-24 11:22:04 · 621 阅读 · 0 评论