C语言之数据类型笔记
2018-02-09 19:45
155 查看
掌握char,short,int,long,long long,double ,float 的极限
以及浮点数的精确度,,,
赋值是将二进制存入内存中,以不同数据类型解析得到值不同
char short 字符,无论有无字符,在表达式都会转换为int 或者unsigned int 类型
long long 类型用来存储手机号码
//两个 %% 表示%
// += -= *= /= %= 高级运算符
// int add(int x,int y); printf("%d",add(5,6) ); 函数起封装作用,数据加工的过程
//为了避免混淆,一般情况下自增或者自减语句,应当单独一行
//num %= 1+a; 等价于num = num %(1+a),赋值运算符从右到左执行
// 5 = 5;错误,常量不可以赋值,赋值号会默认将赋值号右边的数据转换成左边变量类型
// int a = 10, a -= 1.5; a的值为8, 按照等价形式计算,最后进行数据转换
//逗号运算符 ,顺序求值运算符,整个表达式的值为逗号之后表达式的值,按照顺序执行,优先级最低//可以连接多个语句
//printf("%d%d%d",x,y,z); 不用于计算的时候起间隔作用,起连接的作用,运算符方式从左到右
//关系运算符都是从左到右的, 表达式 关系运算符 表达式
//字符串常量可以比较相等或者不等,字符串变量不可以,无论相等的常量多少个引用,都是一个常量,同一个地址
//运算的优先级 !>算术运算符 >关系运算符>&&>|| > 赋值运算符
//逻辑与运算符高于逻辑非运算符 //逻辑运算-->> 短路效应,确定表达式的值不往后面运算
//唯一的一个三目运算符,结合方向从右到左,优先级高于赋值运算符
// y=5.2>=5.6?5:7>8?7:8; y的值为8 ,三目运算符会自动进行数据类型转换
//Windows头文件 Sleep(); 延时函数
以及浮点数的精确度,,,
赋值是将二进制存入内存中,以不同数据类型解析得到值不同
char short 字符,无论有无字符,在表达式都会转换为int 或者unsigned int 类型
long long 类型用来存储手机号码
//两个 %% 表示%
// += -= *= /= %= 高级运算符
// int add(int x,int y); printf("%d",add(5,6) ); 函数起封装作用,数据加工的过程
//为了避免混淆,一般情况下自增或者自减语句,应当单独一行
//num %= 1+a; 等价于num = num %(1+a),赋值运算符从右到左执行
// 5 = 5;错误,常量不可以赋值,赋值号会默认将赋值号右边的数据转换成左边变量类型
// int a = 10, a -= 1.5; a的值为8, 按照等价形式计算,最后进行数据转换
//逗号运算符 ,顺序求值运算符,整个表达式的值为逗号之后表达式的值,按照顺序执行,优先级最低//可以连接多个语句
//printf("%d%d%d",x,y,z); 不用于计算的时候起间隔作用,起连接的作用,运算符方式从左到右
//关系运算符都是从左到右的, 表达式 关系运算符 表达式
//字符串常量可以比较相等或者不等,字符串变量不可以,无论相等的常量多少个引用,都是一个常量,同一个地址
//运算的优先级 !>算术运算符 >关系运算符>&&>|| > 赋值运算符
//逻辑与运算符高于逻辑非运算符 //逻辑运算-->> 短路效应,确定表达式的值不往后面运算
//唯一的一个三目运算符,结合方向从右到左,优先级高于赋值运算符
// y=5.2>=5.6?5:7>8?7:8; y的值为8 ,三目运算符会自动进行数据类型转换
//Windows头文件 Sleep(); 延时函数
#include <stdio.h> #include <stdbool.h> //C99支持C语言的bool类型 //bool 表示逻辑成立或者不成立 int main() { _Bool b1; b1 = true; //真 b1 = false; //假 printf("%d %d",b1,sizeof(b1)); //一个字节 getchar(); }
//%f 默认只能输出小数点后6位 //float 类型只能精确到小数点后6位 //double 精确到小数点后15位,超过以后可能会产生误差 //精确度以外可能正确也可能不正确
#include<stdio.h> int main() { printf("char %d字节\n",sizeof(char)); printf("short %d字节\n", sizeof(short)); printf("int %d字节\n", sizeof(int)); printf("float %d字节\n", sizeof(float)); printf("double %d字节\n", sizeof(double)); //%d 的打印范围INT_MIN 到INT_MAX //%u 范围为 0 到 UINT_MAX getchar(); }
//不同平台不同编译器,同一个整数数据类型大小可能不一样 //int 16位的情况下是2个字节 32位 4个字节 //long 64位 Linux是8个字节 Windows 32位64位都是8个字节 //如果需要跨平台移植可用下面的数据类型定义 //数据类型可以跨平台移植,字节都一样,只要支持C99的编译器都可以 //typedef signed char int8_t; //typedef short int16_t; //typedef int int32_t; //typedef long long int64_t; //typedef unsigned char uint8_t; //typedef unsigned short uint16_t; //typedef unsigned int uint32_t; //typedef unsigned long long uint64_t; // //typedef signed char int_least8_t; //typedef short int_least16_t; //typedef int int_least32_t; //typedef long long int_least64_t; //typedef unsigned char uint_least8_t; //typedef unsigned short uint_least16_t; //typedef unsigned int uint_least32_t; //typedef unsigned long long uint_least64_t; // //typedef signed char int_fast8_t; //typedef int int_fast16_t; //typedef int int_fast32_t; //typedef long long int_fast64_t; //typedef unsigned char uint_fast8_t; //typedef unsigned int uint_fast16_t; //typedef unsigned int uint_fast32_t; //typedef unsigned long long uint_fast64_t;
相关文章推荐
- C语言学习笔记(二)--数据类型、常量和变量简介
- 黑马程序员-IOS学习笔记-C语言基础其他数据类型及总结
- 黑马程序员——C语言笔记之数据类型与常量
- C语言-郝斌笔记-003数据类型
- C语言——第二节笔记 数据类型和表达式
- 〖C语言学习笔记 〗(二) 数据类型
- 【黑马程序员】C语言学习笔记之基本数据类型(六)
- C语言学习笔记之基本数据类型
- C语言之基本数据类型(笔记二)
- 学习笔记---C语言数据类型
- C语言学习笔记-----数据类型大集合
- 数据类型1-C语言学习笔记3
- C语言学习笔记(二)--从最简单的数据类型开始
- C语言学习笔记:01_基本数据类型
- C语言笔记之数据类型(一)
- char数据类型3-C语言学习笔记5
- C语言随堂笔记---数据类型、变量、运算符
- 笔记--关于c语言中各种数据类型所占字节。
- 6、C语言深度学习笔记--数据类型
- C语言提高班学习笔记 lesson1 自定义数据类型