C语言操作符等零散知识点总结

一.关键字

1.概念及特点

概念:C语言自带的保留名字的符号。

关键字都有特殊的意义,是保留给C语⾔使⽤的
程序员⾃⼰在创建标识符的时候是不能和关键字重复的
关键字也是不能⾃⼰创建的。

2.32个关键字

auto break case char const continue default do double else enum ex
float for goto if int long register return short signed sizeof
struct switch typedef union unsigned void volatile while
C99新增关键字:
inline,restrict,_Bool,_Comploex,_Imaginary等。

二.字符、字符串、转义字符和ASCII码

1.字符

如:a,q,@,#等,这些符号都被称为字符, C语⾔中字符是⽤单引号
括起来的,如:'a','b','@'。
单个字符的打印可以使用%c进行占位,格式如下:
printf ( "%c" , 'Q' );

2.字符串

使⽤双引号括起来的⼀串字符就被称为字符串,如:"abcdef",就是⼀个
字符串。
字符串的打印格式可以使⽤ %s 来指定,也可以直接打印如下:
printf ( "%s\n" , "hello C" );
printf ( "hello c" );

特殊注意

       字符串的末尾还隐藏⼀个 \0 的转义字符, \0 是字符串的结束标志。所以我们在使⽤函数 printf() 打印字符串或者 strlen() 计算字符串⻓度的时候,遇到 \0 的时候就⾃动停⽌了。

3.转义字符

在字符中有⼀组特殊的字符是转义字符,转义字符顾名思义:
       
       转变原来的意思的字符

C语言的转义字符有:

\n :是⼀个转义字符表⽰换⾏的意思。
\0 : \0 是字符串的结束标志。
\? :在书写连续多个问号时使⽤,防⽌他们被解析成三字⺟词,在新的编译器上没法验证了。
\' :⽤于表⽰字符常量'
\" :⽤于表⽰⼀个字符串内部的双引号
\\ :⽤于表⽰⼀个反斜杠,防⽌它被解释为⼀个转义序列符。
\a :警报,这会使得终端发出警报声或出现闪烁,或者两者同时发⽣。
\b :退格键,光标回退⼀个字符,但不删除字符。
\f :换⻚符,光标移到下⼀⻚。在现代系统上,这已经反映不出来了,⾏为改成类似于 \v
\n :换⾏符。
\r :回⻋符,光标移到同⼀⾏的开头。
\t :制表符,光标移到下⼀个⽔平制表位,通常是下⼀个8的倍数。
\v :垂直分隔符,光标移到下⼀个垂直制表位,通常是下⼀⾏的同⼀列。

4.ASCII码

ASCII码表

ASCII码特殊需要记的数据:
字符A~Z的ASCII码值从65~90
字符a~z的ASCII码值从97~122
对应的⼤⼩写字符(a和A)的ASCII码值的差值是32
数字字符0~9的ASCII码值从48~57
换⾏ \n 的ASCII值是:10
在这些字符中ASCII码值从0~31 这32个字符是不可打印字符,⽆法打印在屏幕上观察

三.数据类型

包括内置类型自定义类型,以下主要介绍内置类型

signedunsigned修饰字符型和整型的。

signed:表示一个类型带有正负号,包括负数。

unsigned:表示该类型不带有正负号,只能表示0和正整数。

[ int类型默认带有正负号 ]

1.字符型

char

2.整型

短整型:short

整型:int

长整型:long

d更长的整型:long long

3.浮点型

单精度浮点型:float

双精度浮点型:double

更长的浮点型:long double

4.布尔类型

_Bool

取值为true或者false

注意:使用布尔类型得包含头⽂件 <stdbool.h>

5.sizeof操作符

(1)代码

sizeof(类型)
sizeof  表达式

(2)特点

sizeof的计算结果是size_t类型的,单位是字节

四.操作符

1.算数操作符

+、-、*、/、%等也被称为运算符、双目操作符。

特别注意:i)“/”是整除,只会返回整数部分,丢弃⼩数部分。如果希望得到浮点数的结果,两个                         运算数必须⾄少有⼀个浮点数,这时 C 语⾔就会进⾏浮点数除法。

                 ii)“%”表⽰求模运算,即返回两个整数相除的余值。这个运算符只能⽤于整数,不能                          ⽤于浮点数。正负号由第一个运算数决定。

2.赋值操作符

“=”和复合赋值

(1)连续赋值

c = b = a + 3 ;//从右向左依次赋值(不易理解,不建议使用)

(2)复合赋值符

自加:a = a + 3;

自减:a = a - 2;

可以简写为:

a + =3;a - =3;

3.单目操作符

(1)++

前置++:先+1,再使用

后置++:先使用,后+1

(2)--

前置--:先-1,后使用

后置--:先使用,后-1

4.强制类型转换

例如int a = (int) 3.14;
将浮点型强制转换为整型,只取整数部分,不建议使用。

五.printf() 和scanf() 

1.printf()的占位符

%a :⼗六进制浮点数,字⺟输出为⼩写。
%A :⼗六进制浮点数,字⺟输出为⼤写。
%c :字符。
%d :⼗进制整数。
%e :使⽤科学计数法的浮点数,指数部分的 e 为⼩写。
%E :使⽤科学计数法的浮点数,指数部分的 E 为⼤写。
%i :整数,基本等同于 %d 。
%f :⼩数(包含 float 类型和 double 类型)。
%g :6个有效数字的浮点数。整数部分⼀旦超过6位,就会⾃动转为科学计数法,指数部分的 e
为⼩写。
%G :等同于 %g ,唯⼀的区别是指数部分的 E 为⼤写。
%hd :⼗进制 short int 类型。
%ho :⼋进制 short int 类型。
%hx :⼗六进制 short int 类型。
%hu :unsigned short int 类型。
%ld :⼗进制 long int 类型。
%lo :⼋进制 long int 类型。
%lx :⼗六进制 long int 类型。
%lu :unsigned long int 类型。
%lld :⼗进制 long long int 类型。
%llo :⼋进制 long long int 类型。
%llx :⼗六进制 long long int 类型。
%llu :unsigned long long int 类型。
%Le :科学计数法表⽰的 long double 类型浮点数。
%Lf :long double 类型浮点数。
%n :已输出的字符串数量。该占位符本⾝不输出,只将值存储在指定变量之中。
%o :⼋进制整数。
%p :指针。
%s :字符串。
%u :⽆符号整数(unsigned int)。
%x :⼗六进制整数。
%zd size_t 类型。
%% :输出⼀个百分号。

2.scanf()的占位符

%c :字符。
%d :整数。
%f float 类型浮点数。
%lf double 类型浮点数。
%Lf long double 类型浮点数。
%s :字符串。
%[] :在⽅括号中指定⼀组匹配的字符(⽐如 %[0-9] ),遇到不在集合之中的字符,匹配将会
停⽌。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值