C语言基础
asd892776222
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Linux c读取任意大小文件的所有数据
#include<stdio.h>#include<string.h>#include<unistd.h>#include<sys/stat.h>#include<stdlib.h>int main(int argc,char* argv[]){ FILE *fp = NULL; fp = fopen("001.PCM","r"); //打开文件 if(fp == NULL) { printf("--: %s---%d-.原创 2021-08-12 22:10:50 · 682 阅读 · 0 评论 -
memset,0,1,-1和初始化int型数组
memset :fill memory with a constant byte函数定义:#include <string.h> void *memset(void *s, int c, size_t n);The memset() function fills the first n bytes of the memory area pointed to by s with the constant byte c....原创 2021-08-12 09:55:58 · 794 阅读 · 0 评论 -
ALIGN,RT_ALIGN,RT_ALIGN_DOWN
#define ALIGN(x,a) (((x)+(a)-1)&~((a)-1))就是以a为上界对齐的意思。举个例子4k页面边界的例子,即a=4096: 如果x = 3888;那么以上界对齐,执行结果就是4096。 如果x = 4096;结果是4096. 如果x = 4222; 则结果为8192.另外还有一种以下界对齐的方式 #define ALIGN(x,a) ((x)&~(a-1)) 若x = 3888; 结果为0. 如果x = 4096...原创 2021-06-23 08:06:40 · 1142 阅读 · 0 评论 -
定义在结构体里面的宏
/*1、宏定义在结构体里面,只是方便代码的阅读,一般这种情况,大部分是结构体里面有标志量,方便阅读。2、在结构体里面定义一个宏,在结构体外面也可以定义同样的宏,如果两个宏的内容不一样,那么在使用的地方,哪个宏近就使用哪个。(编译会有警告) 宏就是替换,从上面开始,一直往后面替换。如果宏新定义了,那么就使用宏的新值继续替换。*/#include <stdio.h> ...原创 2020-05-02 09:45:16 · 2180 阅读 · 0 评论 -
memcpy、strcpy、memmove
问题一:函数区别memcpy与memmove都是对内存进行拷贝可以拷贝任何内容,而strcpy仅是对字符串进行操作。memcpy与memmove拷贝多少是通过其第三个参数进行控制而strcpy是当拷贝至'\0'停止。memmove函数的功能同memcpy基本一致,但是当src区域和dst内存区域重叠时,memcpy可能会出现错误,而memmove能正确进行拷贝。问题二:mem...原创 2019-06-09 17:42:56 · 217 阅读 · 0 评论 -
统计程序运行时间
1,使用time命令real时间是指挂钟时间,也就是命令开始执行到结束的时间。这个短时间包括其他进程所占用的时间片,和进程被阻塞时所花费的时间。user时间是指进程花费在用户模式中的CPU时间,这是唯一真正用于执行进程所花费的时间,其他进程和花费阻塞状态中的时间没有计算在内。sys时间是指花费在内核模式中的CPU时间,代表在内核中执系统调用所花费的时间,这也是真正由进程使用的CPU时间。...原创 2019-06-09 20:05:05 · 1498 阅读 · 0 评论
分享