随笔分类 -  C

关于Linux中延时函数的分析与实践(转)
摘要:关于Linux中延时函数的分析与实践一、简介 在实际的工程实践中,面对需要程序短暂休眠的情况,我们通常想到的可能是sleep(),usleep(),nanosleep()等函数。但是,在最近阅读代码的过程中,经常会看到使用select()达到延时的目的。本着追根求源(钻牛角尖)的原则,本篇博文,旨在 阅读全文

posted @ 2024-05-29 14:43 xihong 阅读(41) 评论(0) 推荐(0) 编辑

C语言实现“队列“
摘要:循环队列C语言实现: https://baijiahao.baidu.com/s?id=1787412067534088391&wfr=spider&for=pc https://cloud.tencent.com.cn/developer/article/2341089?from=15425 阅读全文

posted @ 2024-05-08 14:10 xihong 阅读(4) 评论(0) 推荐(0) 编辑

关于C语言fgets 读取文件时候多读一行(转)
摘要:梗概:为什么C语言读取文件到结构体时为什么整天多读一行?一切都是【!feof(fp)】的错!!! while (!feof(fp)) { fgets(buffer, 256, fp); j++; } 像这样的代码,是很多C语言学者经常犯的错误!! feof()这个函数是用来判断指针是否已经到达文件尾 阅读全文

posted @ 2023-08-18 16:25 xihong 阅读(130) 评论(0) 推荐(0) 编辑

array type has incomplete element type 问题及解决
摘要:最近在项目中用到一个线性插值查找的例程,定义了一个结构体, 结构体中使用了自身结构体指针。 struct xxx { struct xxx *p; } 使用该例程时,定义了结构数组, struct xxx AA[100], 在调用程序的头文件作了外部声明 extern struct xxx AA;编 阅读全文

posted @ 2023-05-12 09:39 xihong 阅读(3875) 评论(0) 推荐(0) 编辑

#pragma pack(push) 和#pragma pack(pop) 以及#pragma pack()(转)
摘要:我们知道结构体内存对齐字节可以通过#pragma pack(n) 的方式来指定。 但是,有没有想过一个问题,某些时候我想4字节对齐,有些时候我又想1字节或者8字节对齐,那么怎么解决这个问题呢? 此时,#pragma pack(push) 和#pragma pack(pop) 以及#pragma pa 阅读全文

posted @ 2023-01-21 21:16 xihong 阅读(745) 评论(0) 推荐(0) 编辑

C语言实现 vector( 动态数组) 改进版(转)
摘要:之所以再写一封邮件缘起于我写的《 C语言实现 vector( 动态数组)》这篇文章http://blog.csdn.net/dengxu11/article/details/5915857。 原来这个是在Linux下写的,多谢troublema的提议,我发现那份代码在windows上存在一些问题,故 阅读全文

posted @ 2023-01-20 22:20 xihong 阅读(221) 评论(0) 推荐(0) 编辑

C语言如何按照LSB格式把一个word 16 bit转换成两个字节(转)
摘要:这篇文章主要介绍C语言如何按照LSB格式把一个word 16 bit转换成两个字节,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 按照 LSB 格式把一个 word(16 bit) 转换成两个字节 #define FLOPW(ray, val)\ do {\ (ray)[0] 阅读全文

posted @ 2022-08-08 16:07 xihong 阅读(227) 评论(0) 推荐(0) 编辑

关于C语言中的结构体内嵌函数(转)
摘要:https://blog.csdn.net/qq_39490500/article/details/80457831 看门见山 1.内嵌函数定义举例:经过真实测试 在函数中声明定义结构体 #include "fun_in_struct.h" int main(int argc, char **arg 阅读全文

posted @ 2019-10-31 19:17 xihong 阅读(1215) 评论(0) 推荐(0) 编辑

为结构体中函数指针赋值的两种方法(转)
摘要:/** * 为结构体中的指针数组赋值 */ #include <stdio.h> typedef struct test{ void (*p)(void); void (*q)(void); void (*y)(void);}test; void f1(void){ printf("f1\n");} 阅读全文

posted @ 2019-10-31 18:46 xihong 阅读(2226) 评论(0) 推荐(0) 编辑

循环左移实现
摘要:https://wenku.baidu.com/view/912312b019e8b8f67d1cb904.html 阅读全文

posted @ 2019-03-09 14:53 xihong 阅读(491) 评论(0) 推荐(0) 编辑

二维指针的malloc内存分配(转)
摘要:写代码的时候会碰到多维数组的内存分配和释放问题,在分配和释放过程中很容易出现错误。下面贴上一些示例代码,以供参考。 如果要给二维数组(m*n)分配空间,代码可以写成下面: 1 // 先分配m个指针单元,注意是指针单元 // 所以每个单元的大小是sizeof(char *) 1 // 再分配n个字符单 阅读全文

posted @ 2018-07-29 22:06 xihong 阅读(971) 评论(0) 推荐(0) 编辑

c语言中如何通过二级指针来操作二维数组
摘要:通过二级指针去访问二维数组需要先给二级指针分配等同于二维数组行数的一维数组指针,然后把二维数组的每行首地址赋值给对应位置的一维指针上。之后就可以通过二维指针直接访问了。 参考代码如下,可以看具体注释辅助理解。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 阅读全文

posted @ 2018-07-29 17:29 xihong 阅读(3117) 评论(0) 推荐(0) 编辑

如何把一个二维数组的地址赋给一个二维指针?
摘要:int main(){int i = 0, j = 0;int arr[3][5] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 };int (*p)[ 5 ];p = arr;for( i = 0; i < 3; ++i ){for( j 阅读全文

posted @ 2018-07-29 16:22 xihong 阅读(3531) 评论(0) 推荐(0) 编辑

二维数组及二维指针的传递及一些思考(转)
摘要:二维数组和二位指针在程序知识中是一个难点,往往会将人弄得头昏眼花。总结一下这个难点的相关问题。 二维数组,顾名思义就是数组的数组;二维指针是指针的指针。首先,我们来看看二维数组和二维指针等价的问题。 在《C专家编程》10.3节的小启发里讲的很透彻:(以下这段文字及对比一定要认真分析!) 数组和指针参 阅读全文

posted @ 2018-07-29 16:08 xihong 阅读(743) 评论(0) 推荐(0) 编辑

C语言 二维数组(指针)动态分配和释放(转)
摘要:C 二维数组(指针)动态分配和释放 先明确下概念: 32位(bit)和64位(bit)系统的指针占的内存不一样,注意B与b不同,B是Byte(字节),b是bit(位) 1GB=1024MB,1MB=1024KB,1KB=1024B,1B=8bit 在32位的系统中,所有指针都占4 bytes。cpu 阅读全文

posted @ 2018-07-29 13:59 xihong 阅读(2701) 评论(0) 推荐(0) 编辑

二维数组与双重指针(转)
摘要:原文地址:https://blog.csdn.net/u013684730/article/details/46565577 一、简介 1、二维数组 int array[10][10]; 函数声明: void fun(int a[][10]) 函数调用:fun(array); 访问: 一般使用a[i 阅读全文

posted @ 2018-07-29 12:09 xihong 阅读(365) 评论(0) 推荐(0) 编辑

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示