图书管理系统 1.前言 在大一下,我们的C语言课程布置了一次大作业,要求做出一个管理系统,整个系统可以设计为数据插入模块、数据修改模块、数据删除模块、数据显示模块和数据查询模块。...各种信息管理系统本质上是没有太大区别的,对于数据的操作都是差不多的。...{ system("mode con cols=54 lines=30"); system("color F2"); printf("**********欢迎使用****大学图书管理系统...{ system("mode con cols=54 lines=30"); system("color F2"); printf("**********欢迎使用长沙理工大学图书管理系统...继续请输入y或Y:"); getchar(); scanf("%c", &flag); } fclose(fp);//关闭文件 return; }//图书添加的函数 void ReadFromFile
函数类型 在ECMAScript 中有三种函数类型:函数声明,函数表达式和函数构造器创建的函数。每一种都有自己的特点。...,要么处于其它函数的主体(FunctionBody)中 //3.在进入上下文阶段创建 //4.影响变量对象 //5.以下面的方式声明 function exampleFunc() {} 这种函数类型的主要特点在于它们仅仅影响变量对象...innerFD() {} } 2.函数表达式 //函数表达式(缩写为FE)是这样一种函数: //在源码中须出现在表达式的位置 //有可选的名称 //不会影响变量对象 //在代码执行阶段创建 这种函数类型的主要特点在于它在源码中总是处在表达式的位置
一,什么是枚举类型 简单来说,枚举类型就是可以让我们给整数值分配有意义的名字,从而使得代码更易读、易维护 二,枚举类型的定义和变量的声明 1,如何定义和声明 枚举类型的定义和变量的声明方式也与结构体和联合体相似...如果我们在创建枚举变量时,为未给成员进行初始化赋值,则C语言会自动赋值 遵循:默认从0开始,依次增1 如果只有前几个值,那么后面未被赋值的成员也会被自动赋值,遵循依次增1 例子一(不赋值)...存在同名的枚举成员 enum color1 { red, yellow, blue }; enum color2 { red, black, white }; 三,对变量进行赋值 1,使用成员赋值 ⭐C语言中的枚举变量通常只能被赋值为枚举类型中定义的成员...blue = 3 }; int main() { enum color a, b, c; a = red; b = yellow; c = blue; return 0; } 2,强制类型转化...blue = 3 }; int main() { enum color c; c = (enum color)10; //强制类型转换 printf("%d\n", c); return 0
类型转换 类型转换: 在C语言中,当一个运算符的几个操作数类型不同时,编译器会在进行运算之前将他们共同转化为某种一样的数据类型,一般来说编译器会先将占用内存较小的数据转化为占用内存较大的类型,然后在进行运算...---- 强制类型转换 就是变量或数前加上要转换的类型。 例如: printf("%d\n",1+(int)1.6); 将1.6强制转化为整型,小数点后面的数直接抛弃,结果为 2。
C语言中的枚举类型常年跑龙套当配角,不受待见,这当然是有其个人原因的。今天来个小知识,看看枚举为什么那么衰,也顺便看看怎么用。 我们先来回忆一下为什么需要枚举,枚举究竟是个什么东东?...这么看来,枚举是一种挺好玩也挺有用的东西,但是在C语言中怎么就不受待见了呢?...原因是C语言只提供了一种阉割版的枚举,以上两大目的在C中实质上都是没有实现的,也就是说,在C语言中,实际情况是这样的: color = blue; // 正确,此时color就是5 color = 5;...此时color就是blue color = 8; // 正确,8是整型,跟枚举完全没有任何区别 color = red + orange; // 正确,完全等价于 color = 1+2 你看明白了吧,C语言中的所谓枚举其实就是个坑爹货...枚举的真正实现,在C++中才有实现。
文章目录 整数类型 1. 基本介绍 2. 案例演示: 3. 整型的类型 4. 整型的使用细节 整数类型 1....基本介绍 C 语言的整数类型就是用于存放整数值的,比如 12 , 30, 3456 等等 2. 案例演示: int num = 10; 3. 整型的类型 ? ? 4....整型的使用细节 各种类型的存储大小与操作系统、系统位数和编译器有关 ,目前通用的以 64 位系统为主 ?...在实际工作中,c 程序通常运行在 linux/unix 操作系统下.二级考试,使用 windows C 语言的整型类型,分为有符号 signed 和无符号 unsigned 两种,默认是 signed...C 程序中整型常声明为 int 型,除非不足以表示大数,才使用 long long bit(位): 计算机中的最小存储单位。
前言 在本文,我们将学习一个自定义的类型——枚举。相信很多读者听到这个并不会感觉到陌生,那么本文就来着重跟大家聊一聊何为枚举类型,能用枚举类型干什么事。 话不多说,让我们开始本次精彩的学习吧!...枚举类型的声明 在讲完枚举的含义之后,我们就来认识一下,在C语言中是如何声明一个枚举类型的。...以上定义的enum Day,enum Sex,enum Color都是枚举类型。 {}里面的值就是枚举类型可能取值,也叫做枚举常量。 这些可能的取值都是有值的,默认是从0开始,依次递增1。...当然在声明枚举类型的时候可以给枚举常量赋初值。...在C语言中时允许的,但在C++中时不行的,C++对于类型的检查是比较严格的。
char 字符数据类型 C语言表示用字符用 ' '(单引号),%c所对应的是打印字符格式的数据。...那么接下来我们用C语言来演示下如何在代码当中存储字符。... 在C语言代码中既然存在字符类型,那也一定会存在整形类型。...sizeof sizeof是C语言当中的关键字,也是C语言当中的操作符。作用是计算类型也就是数据类型或者变量所占的空间大小。下面来介绍下它的语法。...最后,感谢大家一路以来的支持 当然对于本篇文章所讲述的东西,可以去C语言关键字当中去看,因为像这些关键字的数据类型在博主的这些系列都是有的。
文章目录 浮点类型 1. 基本介绍 2. 案例演示: 3. 浮点型的分类 4. 说明一下: 5. 浮点型使用细节 浮点类型 1....基本介绍 C 语言的浮点类型可以表示一个小数,比如 123.4 ,7.8 ,0.12 等等 2. 案例演示: 3. 浮点型的分类 ? 4.
文章目录 字符类型(char) 1. 基本介绍 2. 基本案例 3. 字符类型使用细节 4. 字符类型本质探讨 5. ASCII 码介绍 6. ASCII码对照表 字符类型(char) 1....基本介绍 字符类型可以表示单个字符,字符类型是 char,char 是 1 个字节(可以存字母或者数字),多个字符称为字符串,在C 语言中 使用 char 数组 表示 字符串,数组不是基本数据类型,而是构造类型...字符类型使用细节 字符常量是用单引号(' ')括起来的单个字符。例如:char c1 = 'a'; char c3 = '9'; C 中还允许使用转义字符‘\’来将其后的字符转变为特殊字符型常量。...可以直接给 char 赋一个整数,然后输出时,会按照对应的 ASCII 字符输出 [97] char 类型是可以进行运算的,相当于一个整数,因为它都对应有 Unicode 码. 案例演示: ?...字符类型本质探讨 字符型 存储到 计算机中,需要将字符对应的码值(整数)找出来 存储:字符’a’——>码值 (97)——>二进制 (1100001)——>存储() 读取:二进制(1100001)——
01枚举 1、如果一个变量只有几种可能的值,则可以定义为枚举类型,所谓“枚举”就是指把可能的值一一列举出来,变量的值只限于列举出来的值的范围内。...5、C编译对枚举类型的枚举元素按常量处理,故称枚举常量。不要因为他们是标识符而把他们看作变量,不能对他们赋值。...6、每一个枚举元素都代表一个整数,C语言编译按定义时的顺序默认它们的值为0,1,2,3,4,5……。 7、枚举元素可以用来判断比较。...C语言 | 逆序输出10个数 更多案例可以go公众号:C语言入门到精通
main(void) { char * strIn = "Linux is my world"; func(strIn); } 执行结果 root@ubuntu:~/project# gcc 2.c.../a.out str:Linux is my world root@ubuntu:~/project# cat 2.c 隐式类型转换 我们写代码的时候,在类型转换的时候,通常在前面加上类型的名字,如果不加的话...+ 1.0; printf("x = %d, z = %f", x, z); return 0; } 结果输出 root@ubuntu:~/project# gcc 3.c...C中的语法: (类型)表达 举个例子 #include int main() { double x = 1.2; int sum = (int)x +...1; printf("sum = %d", sum); return 0; } 结果输出 root@ubuntu:~/project# gcc 4.c && .
编程语言中的数据类型,那是一个刚开始接触代码的初学者会学习的第一个概念,但是我们对这个概念真的理解彻底吗?我看不一定。 ?...不卖关子了,更帅的理解如下:“所谓类型,是我们在使用一块内存之前,跟系统事先说好的一个约定”。 对,类型是一个约定。...内存也一样,说好的用来存放整型,那么系统就会严格遵守你们的约定,将这块内存的每一位都对应地解释为 2 的次幂,然后进行累加。而你却可以瞒着系统,将其他任意数据“塞”到这块内存中。...struct elephant // 一头大象 { char c; double f; int i; char s[5]; }; int a; struct elephant...就这么着,系统就按照 int 型指针的语法来解释 p 了。 这下清楚数据类型强制转换的意思了吧。
C语言枚举类型(Enum): 定义形式为:enum typeName{ valueName1, valueName2, valueName3, ...... }; enum 类型名{名字1,名字2} 枚举变量
文章目录 布尔类型:boolean 1. 基本介绍 2. 应用案例 布尔类型:boolean 1....基本介绍 C 语言标准(C89)没有定义布尔类型,所以 C 语言判断真假时以 0 为假,非 0 为真 但这种做法不直观,所以我们可以借助 C 语言的宏定义 。...C 语言标准(C99)提供了_Bool 型,_Bool 仍是整数类型,但与一般整型不同的是,_Bool 变量只能赋值为 0 或 1,非 0 的值都会被存储为 1,C99 还提供了一个头文件 <stdbool.h...只要导入 stdbool.h ,就能方便的操作布尔类型了 , 比如 bool flag = false; 条件控制语句; if 循环控制语句; while … 2.
举例: // bzero.c #include #include main() { struct { int a;
这是我参与「掘金日新计划 · 10 月更文挑战」的第2天,点击查看活动详情 1.数据类型的介绍 在C语言中有很多的内置类型,如 char //字符数据类型...,是C语言中必不可少的。...int] signed long [int] 其中char也算是整型家族的,因为char在内存中是以ASCII值得形式去存储的,可以看做是一种特殊的整型 2.浮点数家族 float double 3.构造类型...数组类型 结构体类型 struct 枚举类型 enum 联合类型 union 4.指针类型 int pi; char pc; float pf; void pv; 5.空类型 void 表示无类型 2...//00000000000000000000000000000000 --相加后的结果为0 return 0; } 通过上面的正反对比就可以知道为什么在内存中存储的是补码 在计算机系统中
我们再回到sizeof上,当我们鼠标移动到sizeof关键字上面去,会发现这样一段描述: 这是编译器为我们解释了 sizeof( )这个函数 这时我们会发现:sizeof()函数的返回值类型不是...int 类型的第一位二进制存储的是负数,所以他的数据范围是-2^31 ~ 2^31 -1。...而且我们要知道数据再计算机中是以补码的方式进行存储的 所以我们再回过头看这个题目 int 类型的数据和 unsigned int 类型数据进行比较时,编译器会自动将 int 类型的数据转化为unsigned...int 类型的数据。...int 类型中 -1的补码是 11111111 11111111 11111111 11111110,转化成unsiged int 类型的数据,是一个非常大的数字,所以打印 > 。
结构体的每个成员可以是不同类型的变量。...匿名的结构体类型,如果没有对结构体类型重命名的话,基本上只能使用一次。...//匿名结构体类型 struct { int a; char b; float c; }x;//只能在后面接着创建变量 结构体的自引用 1....结构体不能直接引用该类型自身。 2. 但可以存放该类型的指针,间接引用该类型自身。...0; } struct S2 { char c1;//0 char c2;//1 int i;//4 5 6 7 //目前一共8个字节,成立 }; printf("%d\n", sizeof
前言 在之前的学习中,我们学习过数组,数组用来存放一些相同类型的变量;那如果我们需要存储不同类型的数据,数组就无法满足我们的需求,所以,现在就来学习一下能够存放不同类型的变量--自定义类型...这里分析一下 接下来再看下面这个: struct S2 { char c1; char c2; int i; }; 这个结构体与上面那一个都是两个char类型一个int型,但是它们大小一样吗...//传结构体 print2(&s); //传地址 return 0; } 这里print2函数要比较好 原因如下: 函数传参的时候,参数是需要压栈,会有时间和空间上的系统开销...如果传递的一个结构体的时候,结构体特别大,参数压栈的系统开销就比较大,所以会导致性能的下降。...当中位段成员类型也可以选择其他类型)。
领取专属 10元无门槛券
手把手带您无忧上云