C语言
冰夫子
活到老学到老
展开
-
fputc 与fputs函数
1)int fputc(int ch,FILE *fp);功能:向指定文件写入一个字符参数: ch:字符 fp:文件指针返回值: 成功:返回写入的字符 失败:返回EOF 2)int fputs( char *str, FILE *fp );功能:向指定文件写入字符串参数: str:字符串 fp:文件指针返回值: 成功:返回非负数 失败:返回EOF3)例程 fputc函数函数功能:向D:\\demo.txt...原创 2021-04-23 16:47:41 · 4457 阅读 · 0 评论 -
fread误区
打开一个文件fopen之后,执行多次fread,文件位置会自动向文件尾移动,两个printf,第一个打印12345;第二个67890hello.txt里写入1234567890内容。#include <stdio.h>#include <stdlib.h>int main(){ FILE *fp; fp = fopen("hello.txt"...原创 2019-11-26 17:30:18 · 730 阅读 · 0 评论 -
linux下实现对framebuffer(/dev/fb0)的截屏操作
在linux系统中,使用framebuffer来提供用户态进程直接操作显示屏的功能.在嵌入式系统开发中,需要对显示屏的内容进行截取,实现一个lcd截屏工具实现对显示屏内容的截取,存储为bmp格式.一个bmp文件有四部分组成:其中位图文件头内容如下:WORDbfType;DWORDbfSize;WORDbfReserved1;WOR...转载 2019-11-26 17:17:38 · 950 阅读 · 0 评论 -
24位RGB转16位RGB原理
有许多朋友第一次使用16位彩色显示屏会遇到如何将24位RGB颜色转换为对应的16位RGB颜色的问题,通过查阅相关资料,就写一下其中的转换原理吧,希望对大家会有所帮助。我们知道24位RGB是分别由8位红色,8位绿色以及8位蓝色组成:RRRRRRRRGGGGGGGGBBBBBBBB例如:24位RGB红色表示方法为11111111000000...转载 2019-11-26 16:27:06 · 1100 阅读 · 0 评论 -
freetype
https://www.cnblogs.com/lifexy/p/8503070.html原创 2019-11-25 11:02:59 · 272 阅读 · 0 评论 -
单链表操作与实例(全)
//#include "stdafx.h"#include "stdio.h"#include <stdlib.h>#include "string.h" typedef int elemType ; /************************************************************************//* ...转载 2019-11-19 11:21:16 · 384 阅读 · 0 评论 -
计算机为什么要使用补码计算?
今天无意中翻看大学的笔记,看到一个问题:通用计算机为什么使用二进制补码做数学运算?毕业这么多年了,被这个问题给折腾了一下,估计工作N年的人猛地你问他这个问题,他一定会回答没有什么原因,因为用补码,所以用补码;偏偏我不是那样的人,简单的问题能解释明白,也不容易;一下是总结:--------------------------------------------------------------...转载 2019-11-18 16:21:14 · 2294 阅读 · 0 评论 -
数据段,代码段,堆栈段,BSS段理解
5个数据段 进程(执行的程序)会占用一定数量的内存,它或是用来存放从磁盘载入的程序代码,或是存放取自用户输入的数据等等。不过进程对这些内存的管理方式因内存用途 不一而不尽相同,有些内存是事先静态分配和统一回收的,而有些却是按需要动态分配和回收的。对任何一个普通进程来讲,它都会涉及到5种不同的数据段。Linux进程的五个段下面我们来简单归纳一下进程对应的内存空间中所包含的5种不...原创 2017-10-19 11:17:31 · 430 阅读 · 0 评论 -
TAILQ队列(全)
宏名称 操作 TAILQ_INIT 初始化队列 TAILQ_FOREACH 对队列进行遍历操作 TAILQ_INSERT_BEFORE 在指定元素之前插入元素 TAILQ_INSERT_TAIL 在队...转载 2019-11-07 13:48:06 · 595 阅读 · 0 评论 -
标准库文件操作(全)
一、打开一个流这三个函数的区别是:(1)fopen打开路径名由pathname指示的一个文件(2)freopen常用于一个打开的流重新定向。比如stdout是标准输出,我们可以把它重定向到由path指定的一个文件。(3)fdopen取一个现存的文件描述符,并使一个标准的I/O流与该描述符相结合。总结如下:二、一步步探究A.fopen函数#in...转载 2019-11-07 10:03:21 · 975 阅读 · 0 评论 -
#、##、__VA_ARGS__和##__VA_ARGS__
一、#用来把参数转换成字符串例子一:#include <stdio.h>#define P(A) printf("%s:%d\n",#A,A);int main(int argc, char **argv){ int a = 1, b = 2; P(a); P(b); P(a+b);}输出为:例子二:#includ...原创 2019-11-05 15:47:35 · 188 阅读 · 0 评论 -
库函数文件操作
/****************************************************************************int fseek(FILE *stream, long offset, int fromwhere);**********************************************************************...原创 2019-10-30 11:54:03 · 213 阅读 · 0 评论 -
C程序代码规范
1、头文件(.h)的组织方式(从上到下)头文件说明 //注释 防止重复包含宏定义//#ifndef __CONFIG_H__ #deine __CONFIG_H__ #endif 调试开关 头文件引用 //#include“config.h” 宏定义 //#define OK 0 结构定义 //struct 常量声明 ...原创 2019-10-23 13:55:34 · 360 阅读 · 0 评论 -
C程序的存储布局
size - list section sizes and total size是GNU Development Tools,列出目标文件各个部分所占的字节数,当不输入目标文件时,将会把a.out文件作为缺省输入文件名。[clef@rhel6164 c]$ size a.out text data bss dec hex filename 1317 ...转载 2019-10-23 10:13:59 · 254 阅读 · 0 评论 -
32位机器下数据类型长度
对于32位机器,采用gcc编译器或交叉编译器下面数据类型所占字节个数。char 1 %c short 2 %hd int 4 %d long 4 %ld float 4 %f或%g double 8 %lf或%lg 指针 4 %p u_char 1 %c u_s...原创 2019-10-14 14:28:34 · 779 阅读 · 0 评论 -
指针理解,很经典
指针的概念指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。 先声明几个指针放着做例子: 例一: int *ptr; char *ptr; int **ptr; int (*pt转载 2018-04-25 10:39:05 · 13971 阅读 · 6 评论 -
C语言--回掉函数
C语言下的回调函数概念:如果一个函数的参数是一个函数指针,调用者可以传递一个函数的地址给实现者,让实现者去调用它,这个就叫做回调函数。如:void func(void (*f)(void *), void *p)调用者实现者1:调用者提供一个回调函数,再提供一个准备传给回调函数的参数2:把回调函数传给参数 f,把准备传给回调函数的参数按void *类型传给参数 p在适当的时候根据调用者传来的函数指...原创 2018-04-24 18:04:35 · 460 阅读 · 0 评论 -
C语言--学习网站
http://www.cplusplus.com/reference/clibrary/了解函数用法原创 2018-04-04 17:47:06 · 4949 阅读 · 0 评论 -
结构体指针,malloc,typedef
如何定义结构体类型?创建结构体类型变量,结构体指针变量#include <stdio.h>#include <stdlib.h>typedef struct{ int ab;}aaa_t;int main(){ aaa_t *var1; aaa_t var2; var1=(aaa_...原创 2017-12-28 11:33:21 · 1280 阅读 · 0 评论