1. auto 存储类是所有局部变量默认的存储类,auto 只能用在函数内,即 auto 只能修饰局部变量。

    {
    int mount;
    auto int month;
    }
  2. register存储类用于定义存储在寄存器中而不是 RAM 中的局部变量,只用于需要快速访问的变量,比如计数器。

  3. static 修饰局部变量可以在函数调用之间保持局部变量的值,也可以修饰全局变量。

  4. extern 存储类用于提供一个全局变量的引用,全局变量对所有的程序文件都是可见的。

  5. 枚举语法定义格式:

    enum 枚举名 {枚举元素1,枚举元素2,……};

    注:第一个枚举成员的默认值为整型的 0,后续枚举成员的值在前一个成员上加 1,即MON=1,TUE=2,WED=3....

    #include <stdio.h>
    
    enum DAY
    {
    MON=1, TUE, WED, THU, FRI, SAT, SUN
    }; int main()
    {
    enum DAY day;
    day = WED;
    printf("%d",day);
    return 0;
    }
  6. 函数指针是指向函数的指针变量,可以像一般函数一样,用于调用函数、传递参数。

  7. 函数指针变量的声明:

    typedef int (*p)(int,int); // 声明一个指向同样参数、返回值的函数指针类型
    #include <stdio.h> int max(int x, int y)
    {
    return x > y ? x : y;
    } int main(void)
    {
    /* p 是函数指针 */
    int (* p)(int, int) = max;
    int a, b, c, d; printf("请输入三个数字:");
    scanf("%d %d %d", & a, & b, & c); d = p(p(a, b), c); printf("最大的数字是: %d\n", d); return 0;
    }
  8. 结构体

    #include <stdio.h>
    #include <string.h> struct Books
    {
    char title[50];
    char author[50];
    char subject[100];
    int book_id;
    }; /* 函数声明 */
    void printBook( struct Books *book );
    int main( )
    {
    struct Books Book1; /* 声明 Book1,类型为 Books */
    struct Books Book2; /* 声明 Book2,类型为 Books */ /* Book1 详述 */
    strcpy( Book1.title, "C Programming");
    strcpy( Book1.author, "Nuha Ali");
    strcpy( Book1.subject, "C Programming Tutorial");
    Book1.book_id = 6495407; /* Book2 详述 */
    strcpy( Book2.title, "Telecom Billing");
    strcpy( Book2.author, "Zara Ali");
    strcpy( Book2.subject, "Telecom Billing Tutorial");
    Book2.book_id = 6495700; /* 通过传 Book1 的地址来输出 Book1 信息 */
    printBook( &Book1 ); /* 通过传 Book2 的地址来输出 Book2 信息 */
    printBook( &Book2 ); return 0;
    }
    void printBook( struct Books *book )
    {
    printf( "Book title : %s\n", book->title);
    printf( "Book author : %s\n", book->author);
    printf( "Book subject : %s\n", book->subject);
    printf( "Book book_id : %d\n", book->book_id);
    }

C语言复习_01的更多相关文章

  1. C语言复习---零散补充

    一:double和float使用scanf获取数据 printf输出float和double都可以用%f,double还可以用%lf. 2 scanf输入float用%f,double输入用%lf,不 ...

  2. C语言复习20170728

    C语言复习20170728 键盘输入和屏幕输出 字符常量:把字符放在一对单引号内,适用于多数可打印字符. 转义字符: 以反斜线()开头,也是放在一对单引号内,适用于控制字符. .\t,是水平制表符,相 ...

  3. C语言复习20170716

    C语言复习20170716 C数据类型 图片来自:C语言基本数据类型简介 C语言程序处理的数据有常量和变量两种形式. 常量是在程序中不能改变其值的量.例如:整型常量.实型常量.字符常量.字符串常量和枚 ...

  4. C语言复习-字符串与指针

    C语言复习-字符串与指针 例一: [字符串处理 去除C代码中的注释] C/C++代码中有两种注释,/* */和//.编译器编译预处理时会先移除注释.就是把/*和*/之间的部分去掉,把//以及之后的部分 ...

  5. C语言复习系列-转义字符

    C语言复习系列-转义字符 准备学习stm32单片机,感觉需要复习一下C语言,翻看了菜鸟教程,竟然有不少地方看不懂,真让人汗颜······ 转义字符大部分语言里面都有,至少我学过的里面都有,在这些语言中 ...

  6. C语言复习2_运算符

    今天复习一下C语言的运算符 1.赋值运算符 单等号 = 顺序是:从右往左 2.复合运算符 #include <stdio.h> #include <stdlib.h> int ...

  7. C语言 · 复习杂记

    /*=================================*/ /* 基础部分 */ /*=================================*/一:.CPP--C++文件: ...

  8. C语言复习(1)

    test.c #include <stdio.h> int main(){ printf("hello\n"); return 0; } 1.预处理阶段 由于在test ...

  9. C语言复习0_准备工作

    前言: 第一次接触C语言是大一下学期的时候,2013年上半年,那个时候的开发工具还是VS C++,今天了解了一下,常用的开发工具变成了CodeBlocks.决定趁着毕业到入职这一段CD时间,拾起这门语 ...

随机推荐

  1. (5) 图和表(Figure and Table) 【论文写作】

  2. [译] 沙箱中的间谍 - 可行的 JavaScript 高速缓存区攻击

    原文 The Spy in the Sandbox – Practical Cache Attacks in Javascript 相关论文可在 https://github.com/wyvernno ...

  3. 在微信小程序中绘制图表(part2)

    本期大纲 1.确定纵坐标的范围并绘制 2.根据真实数据绘制折线 相关阅读:在微信小程序中绘制图表(part1)在微信小程序中绘制图表(part3) 关注我的 github 项目 查看完整代码. 确定纵 ...

  4. 如何利用WebSocket实现网页版聊天室

    花了将近一周的时间终于完成了利用WebSocket完成网页版聊天室这个小demo,期间还走过了一段"看似弯曲"的道路,但是我想其实也不算是弯路吧,因为你走过的路必将留下你的足迹.这 ...

  5. vue在移动端的自适应布局

    一. 安装插件(lib-flexible 和 postcss-loader.postcss-px2rem) npm i lib-flexible --save npm install postcss- ...

  6. response.setHeader("Cache-Control","no-cache");的作用

      1. response.setHeader("Cache-Control","no-cache"); This is used to prevent the ...

  7. vue引入echarts

    效果图: 1.安装Echarts :     npm install echarts -S 或者使用国内的淘宝镜像: 安装: npm install -g cnpm --registry=https: ...

  8. 文件上传——IIS6.0解析漏洞

    介绍 IIS6.0漏洞可分为目录漏洞和文件漏洞 目录漏洞 访问*.asp格式命令的文件夹下的文件,都会被当成asp文件执行 文件漏洞 畸形文件命名 123.asp -> 123.asp;.txt ...

  9. Python入门-面向对象-特殊方法

    调用拦截功能 class Message: def send(self,info): print("消息发送:",info) class Me: def __getattribut ...

  10. 中文版Postman

    作为软件开发从业者,API 调试是必不可少的一项技能,在这方面 Postman 做的非常出色.但是在整个软件开发过程中,API 调试只是其中的一部分,还有很多事情 Postman 无法完成,或者无法高 ...