C语言部分常见概念

目录

关键字

特点

常见关键字

字符和ASCII码表

什么是字符?

ASCII码表

字符串和\0

什么是字符串

\0意义作用

转义字符

什么是转义字符

有哪些转义字符

一:普通转义字符

二:可理解为字符的8进制或者16进制表示形式的转义字符

注释

含义和意义

类型

注释一:/**/ 多行注释

注释二:// 单行注释


引言

你好,本篇文章如题旨在介绍c语言中部分常见的概念,包括关键字,字符和ASCII码表,转义字符,字符串和\0,注释针对概念将会通过举例子的形式进行介绍和加深理解

关键字

C语⾔中有⼀批保留的名字的符号,这些符号被称为保留字或者关键字。

特点

 1. 关键字都有特殊的意义,是保留给C语言使用的
 2. 程序员自己在创建标识符的时候是不能和关键字重复的 
 3. 关键字也是不能自己创建的。

常见关键字

1. auto    break    case    char    const    continue    default    do    double    else    enum    extern
2. float    for    goto    if    int    long    register    return    short    signed    sizeof     static

3. struct    switch    typedef    union    unsigned    void    volatile    while

 注:在C99标准中加⼊了 inline restrict _Bool _Complex _Imaginary 等关键字。

c语言关键字详介:https://zh.cppreference.com/w/c/keyword

字符和ASCII码表

什么是字符?

字符就是用单引号括起来的单个的符号,像'w'   'f'   '%'   '&'   '@'  '?' 是字符,同时 '1'  '5' 也是字符,但

注意:字符 '1' 和 数字1的意义完全不一样,这就必须要介绍ASCII码表了

ASCII码表

由于计算机只认识二进制序列编码,为⽅便⼤家相互通信,不造成混乱,后来美国国家标准学会(ANSI)出台了⼀个标准ASCII编码,C 语⾔中的字符就遵循了ASCII编码的⽅式此统一创建了标准ASCII码表。以下为ASCII码表

高清:https://zh.cppreference.com/w/cpp/language/ascii

注意:某些特殊值和字符需要记忆

'0'的值(十进制)是48  ,0的值就是0,其他数字同理

'a'的值是97 , 'A'的值是65  -->易知  小写字母—大写字母 =32

'\n'的值是10 ,'\0'的值是0

ASCII码值从0~31这32个字符是不可打印字符,无法打印在屏幕上观察

字符串和\0

什么是字符串

由一串被双引号括起来的字符组成的就叫字符串,例如:"nice"  , ''what can i say" ,"13\q9n&"

\0意义作用

\0是转义字符,也是字符串末尾的结束标志,这意味着在c语言中,字符串的末尾都会自动带上\0。在判断字符串长度的问题中\0至关重要,只有程序找到\0时,字符串长度的计算才会停止。如图:

 arr1,arr2末尾自动加入了\0,但由于arr2字符串中本来就存在\0,故长度提前结束计算为2,而非6;arr3是在数组中单独存放字符,不会自动添加\0,计算长度时\0位置未知,故计算长度为随机值。

转义字符

什么是转义字符

转义字符:转变原来的意思的字符,通过在字符前添加反斜杠 \ 来改变后续字符的原始意义,从而实现特定的编码或格式控制功能。

例如:换行转义字符'\n',原本'n'就是一个字符,在前面加上'\',就有了换行的功能。具体其他转义字符如下

有哪些转义字符

一:普通转义字符

\? :在书写连续多个问号时使⽤,防⽌他们被解析成三字⺟词(为了解决键盘缺少字符的问题创造出的),目前在新的编译器上没法验证了。

\' :⽤于表⽰字符常量 '

\" :⽤于表⽰⼀个字符串内部的双引号 "

\\ :⽤于表⽰⼀个反斜杠 \,防⽌它被解释为⼀个转义序列符。

\a :警报,这会使得终端发出警报声或出现闪烁,或者两者同时发⽣。

\b :退格键,光标回退⼀个字符,但不删除字符。

\f :换⻚符,光标移到下⼀页。在现代系统上,这已经反映不出来了,行为改成类似于 \v 。

\n :换⾏符。

\r :回⻋符,光标移到同⼀⾏的开头。

\t :制表符,光标移到下⼀个水平制表位,通常是下⼀个4/8的倍数。(加上前字符一共8个字符,若前面超8个字符则只算1个字符+7个空格)

例如:

\v :垂直分隔符,光标移到下⼀个垂直制表位,通常是下⼀⾏的同⼀列。

二:可理解为字符的8进制或者16进制表示形式的转义字符

\ddd :ddd表⽰1~3个⼋进制的数字。如:\130表⽰字符X 

\xdd :dd表⽰2个⼗六进制数字。如: \x30表⽰字符0

 \0 :null字符,代表没有内容, \0 就是 \ddd 这类转义字符的⼀种,⽤于字符串的结束标志,其 ASCII码值是0.

转义字符参考:https://zh.cppreference.com/w/c/language/escape

注释

含义和意义

注释就是给自己编写的代码进行批注,既然是批注那就肯定不会对程序的运行产生影响。

注释便于加深巩固他人和自己对自己编写的代码的理解,不至于转瞬即忘。建议养成写有效注释的好习惯。

类型

注释一:/**/ 多行注释
#include <stdio.h>
int main(){
    /*int a=0;
      int b=0;
      int c=0;*/
      int d=0;*/
    return 0;
}

 注:(1)只有最先出现的*/注释才有效,第二个*/无效. (2)支持一行内注释,较自由

注释二:// 单行注释
#include <stdio.h>
int main(){
    //int a=0;
    //int b=0;
      int c=0;//这也是注释
    //int d=0;
    return 0;
}

注:直接注释一行,一行内无法分开注释,可放行首行尾

 注:(1)无论哪一种注释一旦放在" "内就会被认为是字符串一部分,从而失去注释作用

        (2)行内注释会被替换为一个空格,例如 i /*don't*/ like u. 的结果是 i like u.,而不是ilike u.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值