标签:一个 ascii 占用 == ++ 大于等于 std bit 赋值运算
#include<stdio.h> #c语言基础内容 { 1.基础名词含义 Byte bit 2.数据(变量)类型 3.内存储存方式(取反加一) 4.取别名 5.字符串的使用 6.格式控制符总览 7.运算符 /* 【算术运算符】 【赋值运算符】 【比较运算符】 【逻辑运算符】 【位逻辑运算】*/ 8.运算优先级 9.编程规范 } int day1() //c语言里非0既真 { #有关 Byte bit 的注释 { /********************************* Byte(字节) | bit(二进制位、比特或比特率) 1Byte=8bit | 位 /****************************** 二进制(B)、八进制(O)、十进制(D)、十六进制(前缀OX,后缀H)之间的转化 bit //比特率 字节(Byte) 1字节=8bit(0000 0000) 1字节等于2位十六进制 8bit=十六进制 ASCII码总量7bit EBCDIC码总量8bit error: 编译运行汉字无法显示,可能原因是编码方式错误,UTF-8 无BOM型可以避免错误 */ } #short int unsigned 等数据类型的解释 {//数据类型只决定了该类型的储存范围,输出 //范围是由输出控制符以及集成开发环境(IDM) //决定的 数据类型 占用空间 取值范围 格式控制符 short 2字节 (-2^7~2^7-1) %hd int 4字节 (-2^15~2^15-1) %d long windows(32)4字节,Linux为4字节(32位),8字节(64位) (-2^15~2^15-1) %ld long long 8字节 (-2^31~2^31-1) %lld unsigned 无符号型 4字节 (0~2^31)0~4294967295 %u //若强制输出负数则输出乱码 char 1字节 /*8位其中最高位为符号位*/ (NUL~DEL) -128~127 %c //赋值字符变量时需要加单引号 例子:‘a‘ {float 浮点型 4字节 (小数点后六位) %f { 用法对比一 float num1 = 3.1415926535; double num2 = 3.1415926535; printf(‘num1 = %.10f , num2 = %.10f\n‘ , num1 , num2); 输出结果:nu1=3.1415927410 ,num2=3.1415926535 { 解析:num1的结果中,只能精确到小数点后面第六位, 也就是:3.141592 , 第七位,本来是6,但是上图中 的运行结果,却是7了。也就是说,float只能精确到 小数点后面六位,在往后,数字就不精确了。但是, num2的运行结果,是正确的。这说明:double所能精 确到的小数点位数,比float多很多位解析:float只 能精确到小数点后6位. http://www.360doc.com/content/17/1210/18/48169514_711868520.shtml } } { 用法对比二 float num1 = 3.14E3; double num2 = 3.14E3; printf(‘num1 = %.0f , num2 = %.0f\n‘ , num1 , num2); 输出结果:num1=3140 num2=3140 } } (0.375252E-8) %f double 双精度浮点型 8字节 %lf long double 12字节 //16字节64位 %llf bool (布尔){ 1字节 (0,1) %d //头文件<stdbool.h> bool flag =false;(flag为假) bool flag =true; } } } } #变量在内存中的存储形式 /********************************* 变量存放补码+1 例:5的二进制位(0000 0101) 取反(1111 1010) 取反+1(1111 1011) 内存中存放位(1111 1011) *********************************/ #typedef (取别名) { typedef long int int32_a;//用于程序开头,为已有的数据类型取一个新名字 } #字符串 { char a[]="abbfdjk" 内存存放形式:数组本身是不需要终止符号的, 只有数组装的是字符串儿的时候, 才需要终止符号,所以应该理解 为是字符串需要结束符号,所以 其他类型的数组就不用了 |0|1|2|3|4|5|6| 7| |a|b|b|f|d|j|k|\0| 打印字符串 printf("%s",a);或者printf("%s","abbfdjk") 只有这两种方法; } #%d 格式控制符总览 { %d 格式控制符的使用 { %5d >> 该数值输出可占用5位字符位置 %.5d >> 该数值输出时保留到小数点后六位 } %d 格式控制符表 { /******************************************** 格式控制符 打印格式 %s 字符串 %c 字符 %#o 八进制 %#x 十六进制 %d 整型 %ld 长整型 %lld 长长整形 *********************************************/ } } #运算符 { #算数运算符 { 运算符 术语 示例 结果 + 正号 +3 3 - 负号 -3 -3 + 加 10+5 15 - 减 10-5 5 * 乘 10*5 50 / 除 10/5 2 % 取模(取余) 10%3 1 ++ 前置递增 a=2;b=++a; a=3;b=3; ++ 后置递增 a=2;b=a++; a=3;b=2; -- 前置递减 a=2;b=--a; a=1;b=1; -- 后置递减 a=2;b=a--; a=1;b=2; //float型不能进行取余运算 } #赋值运算符 { 运算符 术语 示例 结果 = 赋值 a=2;b=3; a=2;b=3; += 加等于 a=0;a+=2; a=2; -= 减等于 a=5;a-=3; a=2; *= 乘等于 a=2;a+=2; a=4; /= 除等于 a=4;a/=2; a=2; %= 模等于 a=3;a%=2; a=1; } #比较运算符 { 运算符 术语 示例 结果 == 相等于 4==3 0 != 不等于 4!=3 1 < 小于 4<3 0 > 大于 4>3 1 <= 小于等于 4<=3 0 >= 大于等于 4>=1 1 } #逻辑运算符 { 运算符 术语 示例 结果 ! 非 !a 若a为非零即为假,若a为0则为真 && 与 a&&b 若a和b都非零则真,反之则为加 || 或 a||b 若a和b有一个非零则真,两者皆零则为假 #位逻辑运算(得到的值为) | 位运算或 a|b 将a和b进行二进制位或运算,结果输出转化为10进制数 & 位运算与 a&b 将a和b进行二进制与运算,结果输出转化为10进制数 ^ 位逻辑异或 a^b } + - * / % ++ -- a++ 先取值后运算 ++a 先运算再取值 a+++b=(a++)+b float 等浮点型,不能进行取余运算 int 类型变量相除不能打印浮点型 } #运算优先级 /********************************************************************* 1 () [] . -> 2 ! ~ -(负号) ++ -- &(取变量地址)* (type)(强制类型) sizeof 3 * / % 4 + - 5 >> << 6 > >= < <= 7 == != 8 & 9 ^ 10 | 11 && 12 || 13 ?: 14 = += -= *= /= %= |= ^= &= >>= <<= 15 , ******************************************************************/ #编程规范 { ""自己的头文件 <>原本的头文件 /函数名/要求:尽量用小写字母,加下划线; /Ubuntu内的指令 -Wall详细的警告 -l./头文件目录(include) -L./库目录(lib) gcc 编译文件 -o 生成的文件 -Wall 重点 :1.c语言里非0既真 2.数据类型只决定了该类型的储存范围,输出 范围是由输出控制符以及集成开发环境(IDM) 决定的 3.数组本身是不需要终止符号的, 只有数组装的是字符串儿的时候, 才需要终止符号,所以应该理解 为是字符串需要结束符号,所以 其他类型的数组就不用了 4.float 等浮点类型,不能进行取余运算 int 类型变量相除不能打印浮点型 } }
#include<stdio.h>#c语言基础内容{1.基础名词含义Bytebit 2.数据(变量)类型3.内存储存方式(取反加一)4.取别名5.字符串的使用6.格式控制符总览7.运算符 /* 【算术运算符】【赋值运算符】【比较运算符】【逻辑运算符】【位逻辑运算】*/8.运算优先级9.编程规范}int day1() //c语言里非0既真{#有关 Byte bit 的注释{/*********************************Byte(字节) | bit(二进制位、比特或比特率) 1Byte=8bit | 位/******************************二进制(B)、八进制(O)、十进制(D)、十六进制(前缀OX,后缀H)之间的转化bit //比特率字节(Byte)1字节=8bit(0000 0000)1字节等于2位十六进制8bit=十六进制ASCII码总量7bitEBCDIC码总量8bit
error: 编译运行汉字无法显示,可能原因是编码方式错误,UTF-8 无BOM型可以避免错误*/}#short int unsigned 等数据类型的解释{//数据类型只决定了该类型的储存范围,输出 //范围是由输出控制符以及集成开发环境(IDM) //决定的
数据类型 占用空间 取值范围格式控制符 short 2字节 (-2^7~2^7-1) %hdint 4字节 (-2^15~2^15-1) %dlong windows(32)4字节,Linux为4字节(32位),8字节(64位) (-2^15~2^15-1) %ldlong long 8字节 (-2^31~2^31-1) %lldunsigned 无符号型 4字节 (0~2^31)0~4294967295 %u //若强制输出负数则输出乱码char 1字节 /*8位其中最高位为符号位*/ (NUL~DEL) -128~127 %c //赋值字符变量时需要加单引号 例子:‘a‘{float 浮点型 4字节 (小数点后六位) %f{用法对比一float num1 = 3.1415926535;double num2 = 3.1415926535;printf(‘num1 = %.10f , num2 = %.10f\n‘ , num1 , num2);输出结果:nu1=3.1415927410 ,num2=3.1415926535{解析:num1的结果中,只能精确到小数点后面第六位,也就是:3.141592 , 第七位,本来是6,但是上图中的运行结果,却是7了。也就是说,float只能精确到小数点后面六位,在往后,数字就不精确了。但是,num2的运行结果,是正确的。这说明:double所能精确到的小数点位数,比float多很多位解析:float只能精确到小数点后6位.http://www.360doc.com/content/17/1210/18/48169514_711868520.shtml}}{用法对比二float num1 = 3.14E3;double num2 = 3.14E3;printf(‘num1 = %.0f , num2 = %.0f\n‘ , num1 , num2);输出结果:num1=3140 num2=3140}} (0.375252E-8) %fdouble 双精度浮点型 8字节 %lflong double 12字节 //16字节64位 %llfbool (布尔){ 1字节 (0,1) %d //头文件<stdbool.h>bool flag =false;(flag为假)bool flag =true;}}}}#变量在内存中的存储形式/*********************************变量存放补码+1例:5的二进制位(0000 0101) 取反(1111 1010) 取反+1(1111 1011) 内存中存放位(1111 1011)
*********************************/#typedef (取别名){typedef long int int32_a;//用于程序开头,更改程序内已经设置的变量数据类型} #字符串 { char a[]="abbfdjk" 内存存放形式:数组本身是不需要终止符号的, 只有数组装的是字符串儿的时候, 才需要终止符号,所以应该理解 为是字符串需要结束符号,所以 其他类型的数组就不用了|0|1|2|3|4|5|6| 7||a|b|b|f|d|j|k|\0|打印字符串printf("%s",a);或者printf("%s","abbfdjk") 只有这两种方法; }#%d 格式控制符总览{%d 格式控制符的使用{%5d>>该数值输出可占用5位字符位置%.5d >>该数值输出时保留到小数点后六位}%d 格式控制符表{/********************************************格式控制符打印格式%s 字符串%c 字符%#o 八进制 %#x 十六进制%d 整型%ld 长整型%lld 长长整形*********************************************/}}#运算符{#算数运算符{运算符术语示例结果+正号+33-负号-3 -3+加10+5 15-减 10-55*乘10*550/除10/52%取模(取余)10%31++ 前置递增 a=2;b=++a;a=3;b=3;++ 后置递增a=2;b=a++;a=3;b=2;--前置递减a=2;b=--a;a=1;b=1;--后置递减a=2;b=a--;a=1;b=2;//float型不能进行取余运算}#赋值运算符{运算符术语示例结果=赋值a=2;b=3; a=2;b=3;+=加等于a=0;a+=2; a=2;-=减等于a=5;a-=3; a=2;*=乘等于a=2;a+=2; a=4;/=除等于a=4;a/=2; a=2;%=模等于a=3;a%=2; a=1;}#比较运算符{运算符术语示例结果==相等于4==30!=不等于4!=31<小于4<30>大于4>31<=小于等于4<=30>=大于等于4>=11}#逻辑运算符{运算符术语示例结果!非!a若a为非零即为假,若a为0则为真&&与a&&b 若a和b都非零则真,反之则为加||或a||b若a和b有一个非零则真,两者皆零则为假#位逻辑运算(得到的值为)|位运算或a|b将a和b进行二进制位或运算,结果输出转化为10进制数&位运算与a&b将a和b进行二进制与运算,结果输出转化为10进制数^位逻辑异或 a^b}+ - * / % ++ --a++ 先取值后运算++a 先运算再取值a+++b=(a++)+bfloat 等浮点型,不能进行取余运算int 类型变量相除不能打印浮点型}#运算优先级/*********************************************************************1 () [] . ->2 ! ~ -(负号) ++ -- &(取变量地址)* (type)(强制类型) sizeof3 * / %4 + -5 >> <<6 > >= < <=7 == !=8 &9 ^ 10 | 11 && 12 || 13 ?: 14 = += -= *= /= %= |= ^= &= >>= <<= 15 ,******************************************************************/#编程规范{""自己的头文件<>原本的头文件/函数名/要求:尽量用小写字母,加下划线;/-Wall详细的警告-l./头文件目录(include) -L./库目录(lib)gcc 编译文件 -o 生成的文件 -Wall重点:1.c语言里非0既真 2.数据类型只决定了该类型的储存范围,输出 范围是由输出控制符以及集成开发环境(IDM) 决定的 3.数组本身是不需要终止符号的, 只有数组装的是字符串儿的时候, 才需要终止符号,所以应该理解 为是字符串需要结束符号,所以 其他类型的数组就不用了4.float 等浮点类型,不能进行取余运算 int 类型变量相除不能打印浮点型}
}
标签:一个 ascii 占用 == ++ 大于等于 std bit 赋值运算
原文地址:https://www.cnblogs.com/lxuechao/p/12715995.html