C
文章平均质量分 79
匆忙拥挤repeat
倦鸟就此散 余花怎不乱 物是人已非 落寞
红尘难看破 美梦成真否 镜花水月尔 迷惘
展开
-
C语言 "limits.h" 数据类型的界限值
文章目录limits.h 说明测试limits.h 说明limits.h 头文件决定了各种变量类型的各种属性。在该头文件中的宏限制了各种变量类型(比如 char、int 和 long)的值. 不同位数计算机,这些界限值不同。 (我的电脑64位的)测试#include <limits.h>#include <stdio.h>void limits_test()...原创 2020-03-08 20:31:13 · 601 阅读 · 0 评论 -
C语言 "float.h" 浮点数设定
文章目录float.h 说明相关的宏设定float.h 说明浮点数在内存中以科学计数法的形式来存储,具体形式为:flt = $ (-1)^sign × mantissa × base^exponent $flt 是要表示的浮点数。sign 用来表示 flt 的正负号,它的取值只能是 0 或 1:取值为 0 表示 flt 是正数,取值为 1 表示 flt 是负数。base 是基数,或...原创 2020-03-01 17:46:12 · 1235 阅读 · 0 评论 -
C语言 "errno.h" 错误编号
文章目录errno.h使用errno.herrno.h 头文件定义了整数变量 errno,它是通过系统调用设置的,表明在错误事件中的某些库函数发生了错误。它可以被一个程序读取和修改。 在程序启动时,errno 设置为零,C 标准库中的特定函数修改它的值为一些非零值以表示某些类型的错误。您也可以在适当的时候修改它的值或重置为零。extern int * __error(void); //返回...原创 2020-02-25 17:02:24 · 1030 阅读 · 0 评论 -
C语言 "time.h" 时间、日期操作
文章目录time.h示例关于strftime()的格式化参数time.h定义了四个变量类型、两个宏和各种操作日期和时间的函数。示例#include <time.h>#include <stdio.h>void time_test() { /* * size_t 是无符号整数类型,它是 sizeof 关键字的结果。 unsigned...原创 2020-02-23 20:35:14 · 1955 阅读 · 0 评论 -
C语言 "ctype.h" 字符操作
文章目录ctype.h使用ctype.h可用于检测和映射字符使用#include <ctype.h> //可用于检测和映射字符#include <stdio.h>#define pp(arg) printf("%d\n", arg)void ctype_test(int c) { pp(isalnum(c)); //是否是字母和数字 pp...原创 2020-02-22 23:55:33 · 507 阅读 · 0 评论 -
C语言 "assert.h" Debug时断言
文章目录<assert.h>这是一个 debug 期间进行 断言的宏函数,在 release 程序中不参与编译。CMakeLists.txt :#默认无配置就是编译出 Debug版本。如下显式配置 Debug 或 ReleaseSET(CMAKE_BUILD_TYPE “Debug”)#SET(CMAKE_BUILD_TYPE “Release”)使用#include...原创 2020-02-22 23:42:58 · 328 阅读 · 0 评论 -
C 语言 pthread.h 实现启动线程; 基于MacOSX + CLion
文章目录前言案例后记前言不同的操作系统,对于 C 语言 标准库,可能有不同的实现。(查资料说是,unix 系统是标准的,linux 系统是非标准的。反正,我是晕乎乎的) 有些在 linux 上能访问的头文件,在 mac osx (基于unix 的) 上,就无法访问。我的需求:我干安卓的,期望 c 程序运行在 安卓的 linux 虚拟机上。然后,下了个 CLion ,来学习下 C 的...原创 2019-04-17 01:04:08 · 2313 阅读 · 0 评论 -
C语言 获取数组大小,遍历数组
//指针遍历void pp(int * ary, int n) { for(int i = 0; i < n; i++) { *ary += n; printf("%d ", *(ary++)); } printf("\n");}//一般遍历void pp2(int ary[], int n) {// int n = sizeof(ary) / sizeof(int...原创 2019-04-10 14:50:24 · 5084 阅读 · 1 评论 -
C语言中的void和void指针-void*
void 关键字void指针的作用使用方式void指针与函数void 关键字当函数返回值为空时,可以使用void。void empty(int a);当函数参数列表为空时,可以使用void。void empty(void);void指针的作用void指针:void *可以用其指代任何类型的指针。但不能用void指针...原创 2018-05-10 16:55:59 · 4499 阅读 · 1 评论 -
C语言中的共用体
共用体(union)定义使用方式使用注意点:共用体(union)进行某些算法的C语言编程的时候,需要使几种不同类型的变量存放到同一段内存单元中。也就是使用覆盖技术,几个变量互相覆盖。这种几个不同的变量共同占用一段内存的结构,在C语言中,被称作“共用体”类型结构,简称共用体。 也叫 联合体。共用体变量的地址和它的各成员的地址都是同一地址。其所占内存,与占用内存最大的成...原创 2018-05-10 16:51:15 · 1557 阅读 · 0 评论 -
有趣的位运算
位运算位运算,即是 操作二进制的bit(位),来进行运算。其分类有:按位与(&amp;),按位或(|),按位异或(^),按位取反(~),按位左移(&lt;&lt;),按位右移(&gt;&gt;)java中还有 “无符号右移” (&gt;&gt;&gt;);原创 2017-10-23 16:23:38 · 674 阅读 · 0 评论 -
C语言学习入门 (八) 结构体和枚举
结构体它允许内部的元素是不同类型的结构体的定义//结构体类型:struct Person{ char name[20]; //char *name; int age; float weight;};//定义一个结构体变量,定义变量时才分配存储空间structPerson person; //与原创 2014-12-03 18:31:20 · 1212 阅读 · 0 评论 -
C语言学习入门 (二) 语句和运算符
C语言的基本语句跟Java中的差不多循环语句(do while、while、for)条件语句(if 、if-else、switch)goto语句 (比如在循环外 定义一个标记 Exit:; 在循环内可以 用 goto Exit;跳出循环) for(int i = 0; i < 5; i++) { if(i==2) goto exit;原创 2014-12-02 16:01:12 · 1367 阅读 · 0 评论 -
C语言学习入门 (五) 指针
直接引用char a;a = 10;程序内部是怎么操作的呢?其实,程序对变量的读写操作,实际上是对变量所在的存储空间进行写入或取出数据。就上面的代码而言,系统会自动将变量名a转换为变量的存储地址,根据地址找到变量a的存储空间,然后再将数据10以2进制的形式放入变量a的存储空间中。 通过变量名引用变量,由系统自动完成变量名和其存储地址之间的转换,称为原创 2014-12-02 17:23:48 · 1883 阅读 · 0 评论 -
C语言学习入门 (四) 字符串、字符串数组、字符和字符串相关函数
字符串简介* 在Java中,一个字符串可以用String类型来存储String s = "MJ";C语言中没有String这种类型。其实字符串就是字符序列,由多个字符组成,所以在C语言中,我们可以用字符数组来存储字符串。* 字符串可以看做是一个特殊的字符数组,为了跟普通的字符数组区分开来,应该在字符串的尾部添加了一个结束标志'\0'。'\0'是一个ASCII原创 2014-12-02 16:34:48 · 1512 阅读 · 0 评论 -
C语言学习入门 (六) 预处理指令:宏、条件编译、文件包含
预处理指令1.C语言在对源程序进行编译之前,会先对一些特殊的预处理指令作解释(比如之前使用的#include文件包含指令),产生一个新的源程序(这个过程称为编译预处理),之后再进行通常的编译2.为了区分预处理指令和一般的C语句,所有预处理指令都以符号"#"开头,并且结尾不用分号3.预处理指令可以出现在程序的任何位置,它的作用范围是从它出现的位置到文件尾。习惯原创 2014-12-03 18:15:45 · 2442 阅读 · 0 评论 -
C语言学习入门 (三) sizeof函数、内存地址、数组
sizeof可以用来计算一个变量或者一个常量、一种数据类型所占的内存字节数。sizeof(10);char c = 'a';sizeof(c);sizeof(float);地址1.计算机中的内存是以字节为单位的存储空间。内存的每一个字节都有一个唯一的编号,这个编号就称为地址。凡存放在内存中的程序和数据都有一个地址,也就是说,一个函数也有自己的原创 2014-12-02 16:10:17 · 1218 阅读 · 0 评论 -
C语言学习入门 (一) 编译、链接、关键字、数据类型、printf函数
参考:http://www.cnblogs.com/mjios/category/459066.htmlcc/gcc/clang三种c 语言编译器,mac 的 xcode-toolchain 都支持编译文件:cc -c one.c two.c 生成.o目标文件链接文件:cc one.o two.o 默认生成 a.out 执行文件指定生成的可执行文件名 ...原创 2014-12-02 15:08:04 · 1610 阅读 · 0 评论 -
C语言学习入门 (七) 变量与函数,static和extern关键字
局部变量1> 定义:在函数内部定义的变量,称为局部变量。形式参数也属于局部变量。2> 作用域:局部变量只在定义它的函数内部有效,即局部变量只有在定义它的函数内部使用,其它函数不能使用它。全局变量1> 定义:在所有函数外部定义的变量,称为全局变量。2> 作用域:全局变量的作用范围是从定义变量的位置开始到源程序结束,即全局变量可以被在其定义位置之后的其它函数所共原创 2014-12-03 18:22:30 · 1654 阅读 · 0 评论 -
C语言学习入门 (九) typedef 关键字
关键字:typedef用法:为各种数据类型定义一个新名字(别名)typedef与基本数据类型typedef int Integer;Integer a = 8;也可以在别名的基础上再起一个别名typedef IntegerMyInteger; MyInteger aa = 8;原来的数据类型也可以正常使用typedef原创 2015-01-08 11:41:52 · 1373 阅读 · 0 评论