在本章中,您将学习:
C语言简介:
- C是一种过程编程语言。这意味着在过程(函数)中将需要执行一系列语句。
- C由1973年在贝尔实验室的Dennis Ritchie开发。
- C11是2011年12月发布的最新稳定版本。所有主要的C编译器都支持此功能。
- Unix和Linux操作系统是使用C语言编写的。
- C是一种中级编程语言。
- 许多其他编程语言(如Java,Go,C#)也受到C的严重影响。
- C编程允许静态和动态内存管理。
- During 1970 and 1980 many versions of C have been implemented. Hence in 1989 ANSI C was 整型roduced and was later accepted by ISO in 1990.
- 所有C源文件都将另存为.c文件扩展名。例“helloWorld.c”
- 所有C头文件都将另存为.h文件扩展名。例“stdio.h”
C语言的特点:
- 强大的
- 随身携带
- 快速
- 简单易学
- 可扩展的
C语言的缺点:
- 不是面向对象的语言。
- 在其他计算机上运行时,需要重新编译一些代码。
- 没有构造函数和析构函数
- 没有运行时检查。仅在执行c程序后才知道错误。
- There is no strict type checking. In C programming language we can send 整型eger value for a float data type.
- 没有数据安全性。
C能够访问 硬件的低级存储器。这有助于程序员开发有效的代码。因此,C语言被称为中级编程语言。
C程序结构:
一个简单的C程序应包含以下几行。
#包括<stdio.h> int main() { printf("Hello World \n"); return 0; }
程序说明:
第一行“#包括”被称为预处理器指令。“stdio.h”被称为头文件。该头文件具有有关标准输入和输出功能的声明。
下一行是“整型 main()“。 main()是任何c程序的起点。有一个返回类型指定“int”, that informs the compiler that the function returns a value is of type 整型.
接下来是开括号‘{‘,指示功能main()的启动。
下一行是“printf()”功能。这用于将输出显示到标准控制台。请注意,函数中的每个语句均以分号结尾。这将通知编译器该语句已结束。分号是强制终止语句的。
接下来是“返回0;“。这将使程序执行返回到调用的函数。在这种情况下,编译器。在C中,返回值 0 表示程序已完成,没有任何问题。
最后一行是大括号‘}‘,指示函数main()的结尾。
要在Linux中编译C程序,请使用以下命令:
gcc hello.c –o hello.o
要运行执行的程序,请使用以下命令:
./hello.o
C评论:
注释提供了了解功能的有效方法。在函数的开头添加注释并对其功能进行简短描述始终是一个好习惯。
注释中写入的部分将被编译器忽略,并且在编译程序时将删除这些注释。
C支持两种类型的注释:
-
单行注释:
// This is a single line comment
-
多行注释:
/* This is an example of multiline comment */
注释示例:
#包括<stdio.h> int main() { int num = 1; // 整型eger variable /* Multi line comment num = num + 1; Above code will not be executed, as it is in comment */ return 0; }
重要的头文件。
标准版 :提供输入,输出功能,例如printf(),scanf()。
conio.h :控制台输入和输出,提供诸如clrscr(),getch()之类的功能。
分配 :提供内存分配功能,例如malloc(),calloc(),free()。
数学 :提供与数学相关的函数,例如abs(),squrt()。
字符串 :提供与字符串相关的函数,例如strcpy(),strcat()。
断言 :提供像assert(int)这样的宏。
C编程规则:
在编写任何C程序时,我们必须遵循以下规则:
-
- 每个程序都应具有main()来运行并生成输出。
- 所有语句应以分号终止。
- 如果程序员仅在一行中写了分号,则将其视为空语句。
例如:
;
- 所有函数名称,变量名称均应使用小写字母,大写字母用于符号常量。
- 每个开括号都应有一个闭括号。
该网站上可用的教程列表:
C编程20+章 | C ++编程80+章 |
100多个编码问题 | 数据结构和算法85+章 |
系统设计20+章 | Shell脚本编写12章 |
4g LTE 60+章节 | 最常见的编码问题 |
5G NR 50+章 | Linux系统编程20+章 |