c语言中这几个关键字什么意思

如题所述

鉴于题主上传的图片分辨率过低,部分关键字实在是看不清!仅挑我能看清的说:

格式:
序号. 关键字: 作用和解释说明

表中给出的关键字是按照字典序排列的,实际上部分关键字之间存在固定搭配,我将按照作用和搭配来说明。

由于语言标准并未规定数据类型的字节长度,所有以下类型都假设在最常见的IA32位处理器上

关键字大致可以分为4类:1)用于变量修饰;2)用于类型说明;3)用于流程控制;4)其他作用

1)用于变量修饰的关键字

    auto:用于类型声明,即,不指定变量类型,要求编译器为变量分配随机值,不常用。

    const:用于修饰变量,即常量声明,变量的值一经初始化就不能再改变

    extern:用于变量声明,表示,此变量已经在其它文件中定义,这里只做声明,不做定义

    register:要求编译器使用寄存器存储该变量的值,编译器有权不采纳建议

    volatile:指明变量在运行过程中可被隐性的改变

    static:指明该变量作用于为全局作用域,即,程序运行时就分配存储空间,在运行期间均可见

2)用于类型说明

    auto:用于声明变量时不指定变量类型,而让编译器为变量赋随机值

    char:用于声明'字符型'变量,其本质是一个有符号的8位整数

    short:用于声明'短整型'变量,其本质是一个有符号的16位整数

    int:用于声明'整数型'变量,其本质是一个32位的有符号整数

    long:用于声明'长整型'变量,其本质是一个64位有符号整数

    float:用于声明'单精度浮点'变量,32位长

    double:用于声明'单精度浮点'变量,64位长

    enum:用于定义'枚举'类型,也可用于枚举类型变量的声明

    signed:用于声明有符号类型,但是通常是不必要的,变量默认模式下就是signed模式,如:int a; 等价于 signed int a;

    unsigned:显式指明,该变量是无符号类型,如,unsigned int a; 该变量将用全部32位记录数据,而不记录符号位

    struct:用于'结构体'类型的定义,用于结构体类型变量的声明

    union:用于'联合体'类型的定义,用于结构体类型变量的声明

    void:不指定变量类型,或称“无类型”,常用函数返回值的声明和通用性的指针声明,如:在函数原型:

void function() { /*function body */ } 中指明函数function将没有返回值,或用于指针变量的声明,如:

void * generic_pointer = (void*)(&variable_name);

3)    用于流程控制的关键字

    break:用于终止本次本层循环;或者在switch体中提前结束case判断

    continue:用于中止本层循环,直接开始新一轮的循环

    do:do...while循环的关键字,固定搭配,没有其他使用(我所知的)

    if:分支语句关键字,用于条件测试

    else:分支语句关键字,用于if测试失败的候选,if...else是固定搭配:

if (condition1){

} else { //candidate

}

其中,if可以单独使用,而else不可以

    for:for循环关键字

    while:while循环关键字

    goto:强制跳转,汇编语言的遗留产物。使用方法:goto label; 在使用C语言时不建议使用goto,理由是可读性差。但是操作系统代码中大量使用goto,因为goto能够带来性能上的提升。

    return:用于从函数返回。两种情况:

1. return; 即直接return,用于没有返回值的函数

2. return value; 带值返回,用于从声明了返回值的函数中返回,value的类型需与函数声明要求的返回值是兼容的(兼容指类型相同或可发生隐式类型转换)

    switch:多分枝结构swich...case关键字

    case:与switch搭配使用

    default:与swich,case搭配使用。以上三个关键字,加上break构成完整的多分枝结构:

switch(value){

case condition1:

/*do something*/

break;

case condition2:

/*do something*/

break;

........................

case conditionN:

/*do something*/

break;

default

}

多分枝结构的相比于嵌套的if...else结构有性能上的优势,但是switch的测试仅支持“整数兼容”类型的值的测试

4)其他作用关键字

    typedef:用于类型重命名,如:

typedef int Integer; //将int类型重命名为Integer

一种常见的使用是与struct关键字使用

typdef struct{

} MyStruct; //将声明的struct类型名称定为MyStruct

    sizeof:返回size_t类型的值,用于获取一个变量或者类型所占的字节数,如:

sizeof(int); //结果为4,表示int类型占4个字节,即32位

/**

* 以上内容全部原创,纯手打。如果对内容有异议,欢迎评论指正。最后,希望对题主有所帮助,欢迎追问~

*/

!!!最后,吐槽一下百度知道的编辑器,根本不能插入代码,全都是纯文本,各位将就看吧

!!!麻烦大家以后再问这种问题,找个专业点的网站,知道实在是不合适

温馨提示:内容为网友见解,仅供参考
第1个回答  2019-07-17
main和printf都不是关键字,都是函数名
main是主函数名,在大多数c代码里面main是最初执行的函数
printf是c语言的输出函数,将参数按照指定格式输出到屏幕上本回答被网友采纳
第2个回答  2019-07-17
你这看不清啊,能写下吗
相似回答