#c语言基础内容
2021-02-15 07:20
标签:一个 ascii 占用 == ++ 大于等于 std bit 赋值运算 #include #c语言基础内容 标签:一个 ascii 占用 == ++ 大于等于 std bit 赋值运算 原文地址:https://www.cnblogs.com/lxuechao/p/12715995.html#include
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 //头文件
*********************************/#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>31=大于等于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 >> >= >= 原本的头文件/函数名/要求:尽量用小写字母,加下划线;/-Wall详细的警告-l./头文件目录(include) -L./库目录(lib)gcc 编译文件 -o 生成的文件 -Wall重点:1.c语言里非0既真 2.数据类型只决定了该类型的储存范围,输出 范围是由输出控制符以及集成开发环境(IDM) 决定的 3.数组本身是不需要终止符号的, 只有数组装的是字符串儿的时候, 才需要终止符号,所以应该理解 为是字符串需要结束符号,所以 其他类型的数组就不用了4.float 等浮点类型,不能进行取余运算 int 类型变量相除不能打印浮点型}
}