随笔分类 -  C基础

摘要:#include #include #include //typedef unsigned int size_t; int main() { FILE *p = fopen("./a.txt","r"); FILE *p1 = fopen("./b.txt","w"); char buf[10] = {0}; while(!feof(p)) { ... 阅读全文
posted @ 2019-07-21 21:24 王清河 阅读(454) 评论(0) 推荐(0) 编辑
摘要:fscanf()函数和scanf函数用法一样。fscanf是从一个文件中读取字符串,scanf是从键盘读取字符串。(遇到空格就停止) fread()函数和fwrite()函数:操作文本文件和二进制文件 fopen()函数只能读文本文件 fread()函数有返回值,返回的是size_t类型,unsig 阅读全文
posted @ 2019-07-21 21:22 王清河 阅读(2485) 评论(0) 推荐(0) 编辑
摘要:计算字符串“25 + 32 = ” 计算文本文件中的计算: 运行结果; 分析:最后面多一个0是因为用feof判断是否到达文件结尾会多循环一次。 strncpy()函数:将指定长度的字符串复制到字符数组中 语法: char *strncpy(char *destinin, char *source, 阅读全文
posted @ 2019-07-18 19:02 王清河 阅读(181) 评论(0) 推荐(0) 编辑
摘要:文件文本排序: 数组冒泡: 文件数据排序 如果文件数据过大,就不能在栈中建立一个数组,考虑使用堆 阅读全文
posted @ 2019-07-18 14:15 王清河 阅读(468) 评论(0) 推荐(0) 编辑
摘要:fopen()函数参数: r 只读的方式打开文件。 打开成功返回文件指针, 打开失败返回NULL r+ 以读写方式打开文件。 文件必须存在 rb+ 以二进制模式读写文件,文件必须存在 rw+ 读写一个二进制文件,允许读和写 w 打开只写文件,若文件存在,则文件长度清零,若文件不存在,则创建该文件 w 阅读全文
posted @ 2019-07-17 18:33 王清河 阅读(291) 评论(0) 推荐(0) 编辑
摘要:文件加密: 文件解密: 阅读全文
posted @ 2019-07-16 19:04 王清河 阅读(315) 评论(0) 推荐(0) 编辑
摘要:读一行: 读所有: 阅读全文
posted @ 2019-07-16 18:50 王清河 阅读(101) 评论(0) 推荐(0) 编辑
摘要:缺陷:scanf输入会将空格自动隔开下一行。 gcc已经禁止使用gets函数了。 接受带空格的字符出的方法,vs中可以使用gets_s函数, linux环境下只能使用char *fgets(char *buf, int bufsize, FILE *stream); fget(str,maxn,st 阅读全文
posted @ 2019-07-16 18:38 王清河 阅读(227) 评论(0) 推荐(0) 编辑
摘要:指向函数的指针: typedef简化: 阅读全文
posted @ 2019-07-15 19:30 王清河 阅读(158) 评论(0) 推荐(0) 编辑
摘要:结构体作为函数参数: 结构体作为函数参数时,实参传入地址,形参用指针接收。 运行结果; exbot@ubuntu:~/wangqinghe/C/20190714$ ./struct2 name = mike,age = 100 如果函数参数的结构特别大,比如name[10000],会导致入栈速度变得 阅读全文
posted @ 2019-07-14 09:33 王清河 阅读(914) 评论(0) 推荐(0) 编辑
摘要:结构体中带有指针的情况 运行结果: exbot@ubuntu:~/wangqinghe/C/20190714$ gcc struct.c -o struct exbot@ubuntu:~/wangqinghe/C/20190714$ ./struct name = tom, age = 20 如果修 阅读全文
posted @ 2019-07-14 09:11 王清河 阅读(5438) 评论(0) 推荐(0) 编辑
摘要:占了1个字节 占了8个字节 控制LED灯的结构体: 阅读全文
posted @ 2019-07-13 10:27 王清河 阅读(488) 评论(0) 推荐(0) 编辑
摘要:函数声明:char *fgets(char *str,int n,FILE *stream) 函数介绍:从指定的stream流中读取一行,并把它存储在str所指向的字符串中。当读取到(n-1)个字符时,获取读取到换行符时,或者到达文件末尾时,他会停止。具体视情况而定。 函数参数: l str –- 阅读全文
posted @ 2019-07-12 16:20 王清河 阅读(373) 评论(0) 推荐(0) 编辑
摘要:运行结果:4 运行结果:8 运行结果:8 分析:以结构体中最大的数据类型的字节为标准,随后的基础数据类型都会跟随它对齐 运行结果:12 a b c d e 13 14 15 16 32位计算机(主流): long 8 int 4 short 2 char 1 运行结果:24 a b c d e 阅读全文
posted @ 2019-07-11 19:08 王清河 阅读(263) 评论(0) 推荐(0) 编辑
摘要:通过函数给实参分配内存,可以通过二级指针实现 如果出现以下错误: test.c:6:7: warning: incompatible implicit declaration of built-in function ‘malloc’ [enabled by default] *p = malloc 阅读全文
posted @ 2019-07-11 18:12 王清河 阅读(293) 评论(0) 推荐(0) 编辑
摘要:在linux环境下写c代码时会尝试各种方法或调整路径,需要用到#if 有时候会调整代码,但是又不是最终版本的更换某些值,就需要注释掉,或者需要频繁的来回更换某个变量值测试 就可以用这种方法,只需要更改 if 后面跟的0,1就能达到变换变量值的效果 阅读全文
posted @ 2019-07-11 13:50 王清河 阅读(2339) 评论(0) 推荐(1) 编辑
摘要:设置两个数值来表示最大数和第二大数,在循环比较赋值即可 测试代码: 运行结果: smax = 4 阅读全文
posted @ 2019-07-10 19:39 王清河 阅读(1130) 评论(0) 推荐(0) 编辑
摘要:运行结果: 阅读全文
posted @ 2019-07-10 17:21 王清河 阅读(374) 评论(0) 推荐(0) 编辑
摘要:函数声明:int vfprintf(FILE *stream, const char *format, va_list arg) 函数参数: stream—这是指向了FILE对象的指针,该FILE对象标识了流。 format—c语言字符串,包含了要被写入到流stream中的文本。它可以包含嵌入的fo 阅读全文
posted @ 2019-07-08 16:36 王清河 阅读(1734) 评论(0) 推荐(1) 编辑
摘要:实现了传输进去的字符串所在的文档,函数和行数显示功能。 实现了将传入的可变参数打印到日志功能。 输出结果: exbot@ubuntu:~/wangqinghe/C/20190703$ gcc log.c -o log exbot@ubuntu:~/wangqinghe/C/20190703$ ./l 阅读全文
posted @ 2019-07-08 15:30 王清河 阅读(1078) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示