仙桃蓝星设计培训|仙桃电脑培训|仙桃设计培训|仙桃室内设计|仙桃会计培训|07283322688|15171575077|仙桃市蓝鑫室内设计|仙桃市蓝星室内设计

customer
service hotline
07283322688
我校由仙桃市蓝星科技发展有限公司成立于2002年3月,是一家以设计培训为主的专业教育学校,学校本着:“立足本地、服务社区、辐射全国、培养技能、指导业”的发展方针。十多来年以来,先后开办了五家分校,年培训规模一直同行业,学生足迹遍及全国。年年被主管单位评定为“民办职业先进单位”、“诚信学校”等、被省劳动和社会保障厅,省财政厅定为“仙桃市职业技能定点培训机构”并被湖北省计算机技术与软件技术水平资格考试办公室授予“全国计算机技术与专业技术资格(水平)考试 考试机构”。 长期以来我校本着"以科学的管理规范人,以高尚的情操感染人,以优质的教学培养人"的指导思想,内理校务,外树形象。每位教职员工在各自的岗位上尽心尽力,尽职尽责。整个教职工团队,在教学中彰显实力,在工作中形成动力,在创新中增强战斗力,在与人的交往沟通中凝聚合力。形成了“讲学习,讲效率,讲正气,讲纪律”的良好风气。 我校在不断发展中形成了自己的管理理念:面对市场,办出特色,形成自己的核心竞争力。开设精品专业:商务电子、专业会计、平面设计、室内设计、产品设计。并结合市场灵活开班:随到随学,学会为止!保证学习质量,以质量创信誉,靠信誉求发展。严格管理求信誉,创新开辟新市场。个性服务释本色,行为高效保质量。通过管理创新,教学创新,服务创新,甄选良师,狠抓教学管理和教学质量,建立具有自身特色的精品专业、教学机制和管理文化,打造的品牌职业教
试学体验 在线咨询
子栏目广告位
位置:首页新闻中心C语言介绍与语法
新闻中心

C语言介绍与语法

发布:2023/7/28 来源:百度 作者:蓝星设计培训机构 浏览:299

简介

C 语言是一种通用的高级语言,最初是由丹尼斯·里奇在贝尔实验室为开发 UNIX 操作系统而设计的。C 语言最开始是于 1972 年在 DEC PDP-11 计算机上被首次实现。

在 1978 年,布莱恩·柯林汉(Brian Kernighan)和丹尼斯·里奇(Dennis Ritchie)制作了 C 的第一个公开可用的描述,现在被称为 K&R 标准。

UNIX 操作系统,C编译器,和几乎所有的 UNIX 应用程序都是用 C 语言编写的。由于各种原因,C 语言现在已经成为一种广泛使用的专业语言。

  • 易于学习。
  • 结构化语言。
  • 它产生高效率的程序。
  • 它可以处理底层的活动。
  • 它可以在多种计算机平台上编译。

关于 C

  • C 语言是为了编写 UNIX 操作系统而被发明的。
  • C 语言是以 B 语言为基础的,B 语言大概是在 1970 年被引进的。
  • C 语言标准是于 1988 年由美国国家标准协会(ANSI,全称 American National Standard Institute)制定的。
  • 截至 1973 年,UNIX 操作系统完全使用 C 语言编写。
  • 目前,C 语言是最广泛使用的系统程序设计语言。
  • 大多数先进的软件都是使用 C 语言实现的。
  • 当今最流行的 Linux 操作系统和 RDBMS(Relational Database Management System:关系数据库管理系统) MySQL 都是使用 C 语言编写的。

为什么要使用 C?

C 语言最初是用于系统开发工作,特别是组成操作系统的程序。由于 C 语言所产生的代码运行速度与汇编语言编写的代码运行速度几乎一样,所以采用 C 语言作为系统开发语言。下面列举几个使用 C 的实例:

  • 操作系统
  • 语言编译器
  • 汇编器
  • 文本编辑器
  • 打印机
  • 网络驱动器
  • 现代程序
  • 数据库
  • 语言解释器
  • 实体工具

C 程序

一个 C 语言程序,可以是 3 行,也可以是数百万行,它可以写在一个或多个扩展名为 ".c" 的文本文件中,例如,hello.c。您可以使用 "vi""vim" 或任何其他文本编辑器来编写您的 C 语言程序。

本教程假定您已经知道如何编辑一个文本文件,以及如何在程序文件中编写源代码。


C11

C11(也被称为C1X)指ISO标准ISO/IEC 9899:2011。在它之前的C语言标准为C99。

新特性

  • 对齐处理(Alignment)的标准化(包括_Alignas标志符,alignof运算符,aligned_alloc函数以及<stdalign.h>头文件)。

  • _Noreturn 函数标记,类似于 gcc 的 __attribute__((noreturn))。

  • _Generic 关键字。

  • 多线程(Multithreading)支持,包括:
    _Thread_local存储类型标识符,<threads.h>头文件,里面包含了线程的创建和管理函数。
    _Atomic类型修饰符和<stdatomic.h>头文件。

  • 增强的Unicode的支持。基于C Unicode技术报告ISO/IEC TR 19769:2004,增强了对Unicode的支持。包括为UTF-16/UTF-32编码增加了char16_t和char32_t数据类型,提供了包含unicode字符串转换函数的头文件<uchar.h>。

  • 删除了 gets() 函数,使用一个新的更安全的函数gets_s()替代。

  • 增加了边界检查函数接口,定义了新的安全的函数,例如 fopen_s(),strcat_s() 等等。

  • 增加了更多浮点处理宏(宏)。

  • 匿名结构体/联合体支持。这个在gcc早已存在,C11将其引入标准。

  • 静态断言(Static assertions),_Static_assert(),在解释 #if 和 #error 之后被处理。

  • 新的 fopen() 模式,("…x")。类似 POSIX 中的 O_CREAT|O_EXCL,在文件锁中比较常用。

  • 新增 quick_exit() 函数作为第三种终止程序的方式。当 exit()失败时可以做最少的清理工作。

  • 程序结构

    在我们学习 C 语言的基本构建块之前,让我们先来看看一个最小的 C 程序结构,在接下来的章节中可以以此作为参考。

    C Hello World 实例

    C 程序主要包括以下部分:

    • 预处理器指令
    • 函数
    • 变量
    • 语句 & 表达式
    • 注释

    让我们看一段简单的代码,可以输出单词 "Hello World":

    实例

    #include <stdio.h> int main() { /* 我的第一个 C 程序 */ printf("Hello, World! \n"); return 0; }

    接下来我们讲解一下上面这段程序:

    1. 程序的第一行 #include <stdio.h> 是预处理器指令,告诉 C 编译器在实际编译之前要包含 stdio.h 文件。
    2. 下一行 int main() 是主函数,程序从这里开始执行。
    3. 下一行 /*...*/ 将会被编译器忽略,这里放置程序的注释内容。它们被称为程序的注释。
    4. 下一行 printf(...) 是 C 中另一个可用的函数,会在屏幕上显示消息 "Hello, World!"。
    5. 下一行 return 0; 终止 main() 函数,并返回值 0。

    编译 & 执行 C 程序

    接下来让我们看看如何把源代码保存在一个文件中,以及如何编译并运行它。下面是简单的步骤:

    1. 打开一个文本编辑器,添加上述代码。
    2. 保存文件为 hello.c
    3. 打开命令提示符,进入到保存文件所在的目录。
    4. 键入 gcc hello.c,输入回车,编译代码。
    5. 如果代码中没有错误,命令提示符会跳到下一行,并生成 a.out(Windows 生成 a.exe) 可执行文件。
    6. 现在,键入 a.out 来执行程序。
    7. 您可以看到屏幕上显示 "Hello World"
    $ gcc hello.c
    $ ./a.out Hello, World!

    请确保您的路径中已包含 gcc 编译器,并确保在包含源文件 hello.c 的目录中运行它。

    如果是多个 c 代码的源码文件,编译方法如下:

    $ gcc test1.c test2.c -o main.out $ ./main.out

    test1.c 与 test2.c 是两个源代码文件。

    基本语法

    我们已经看过 C 程序的基本结构,这将有助于我们理解 C 语言的其他基本的构建块。

    C 的令牌(Token)

    C 程序由各种令牌组成,令牌可以是关键字、标识符、常量、字符串值,或者是一个符号。例如,下面的 C 语句包括五个令牌:

    printf("Hello, World! \n");
    

    这五个令牌分别是:

    printf
    (
    "Hello, World! \n"
    )
    ;
    

    分号 ;

    在 C 程序中,分号是语句结束符。也就是说,每个语句必须以分号结束。它表明一个逻辑实体的结束。

    例如,下面是两个不同的语句:

    printf("Hello, World! \n");
    return 0;
    

    注释

    C 语言有两种注释方式:

    // 单行注释
    

    以 // 开始的单行注释,这种注释可以单独占一行。

    /* 单行注释 */
    /* 
     多行注释
     多行注释
     多行注释
     */
    

    /* */ 这种格式的注释可以单行或多行。

    您不能在注释内嵌套注释,注释也不能出现在字符串或字符值中。

    标识符

    C 标识符是用来标识变量、函数,或任何其他用户自定义项目的名称。一个标识符以字母 A-Z 或 a-z 或下划线 _ 开始,后跟零个或多个字母、下划线和数字(0-9)。

    C 标识符内不允许出现标点字符,比如 @、$ 和 %。C 是区分大小写的编程语言。因此,在 C 中,Manpower 和 manpower 是两个不同的标识符。下面列出几个有效的标识符:

    mohd       zara    abc   move_name  a_123
    myname50   _temp   j     a23b9      retVal
    

    关键字

    下表列出了 C 中的保留字。这些保留字不能作为常量名、变量名或其他标识符名称。

    关键字 说明
    auto 声明自动变量
    break 跳出当前循环
    case 开关语句分支
    char 声明字符型变量或函数返回值类型
    const 定义常量,如果一个变量被 const 修饰,那么它的值就不能再被改变
    continue 结束当前循环,开始下一轮循环
    default 开关语句中的"其它"分支
    do 循环语句的循环体
    double 声明双精度浮点型变量或函数返回值类型
    else 条件语句否定分支(与 if 连用)
    enum 声明枚举类型
    extern 声明变量或函数是在其它文件或本文件的其他位置定义
    float 声明浮点型变量或函数返回值类型
    for 一种循环语句
    goto 无条件跳转语句
    if 条件语句
    int 声明整型变量或函数
    long 声明长整型变量或函数返回值类型
    register 声明寄存器变量
    return 子程序返回语句(可以带参数,也可不带参数)
    short 声明短整型变量或函数
    signed 声明有符号类型变量或函数
    sizeof 计算数据类型或变量长度(即所占字节数)
    static 声明静态变量
    struct 声明结构体类型
    switch 用于开关语句
    typedef 用以给数据类型取别名
    unsigned 声明无符号类型变量或函数
    union 声明共用体类型
    void 声明函数无返回值或无参数,声明无类型指针
    volatile 说明变量在程序执行中可被隐含地改变
    while 循环语句的循环条件

    C99 新增关键字

    _Bool _Complex _Imaginary inline restrict

    C11 新增关键字

    _Alignas _Alignof _Atomic _Generic _Noreturn
    _Static_assert _Thread_local      

    C 中的空格

    只包含空格的行,被称为空白行,可能带有注释,C 编译器会完全忽略它。

    在 C 中,空格用于描述空白符、制表符、换行符和注释。空格分隔语句的各个部分,让编译器能识别语句中的某个元素(比如 int)在哪里结束,下一个元素在哪里开始。因此,在下面的语句中:

    int age;
    

    在这里,int 和 age 之间必须至少有一个空格字符(通常是一个空白符),这样编译器才能够区分它们。另一方面,在下面的语句中:

    fruit = apples + oranges;   // 获取水果的总数
    

    fruit 和 =,或者 = 和 apples 之间的空格字符不是必需的,但是为了增强可读性,您可以根据需要适当增加一些空格。

【字体: 】 【关闭窗口
上一篇:excel函数公式与详解
下一篇:C语言入门基础知识
 首页  电话  短信
背景
音乐
咨询
热线
服务热线:07283322688
微信
二维码
^
顶部