C语言简介
C语言是一门使用了近50年的通用编程语言。从操作系统(如,Windows操作系统等)到复杂的程序(如,Python解释器,Git,Oracle数据库等),都是使用 C 语言编写的。
目前,C 语言是最广泛使用的系统程序设计语言。
C 语言具有以下特点:
- 易于学习。
- 结构化语言。
- 它产生高效率的程序。
- 它可以处理底层的活动。
- 它可以在多种计算机平台上编译运行。
【单选题】C语言是:通用编程语言
什么是C语言编译器?
首先我们要明白编译的意思,它是指把高级语言翻译成计算机能读懂的低级语言(二进制代码),这样计算机才会执行你的命令,编译器就相当于一个翻译,在翻译的过程中还会检查我们语法上有没有错误。
那么C语言编译器就是把用C语言写的程序翻译成二进制代码的工具了。
常用的C语言编译器
- GCC(GNU Compiler Collection) :使用最广泛的C语言编译器,由 GNU 项目开发。预装于大部分 Linux 系统。最早支持 C 语言,后扩展支持 C++ ,目前还可以处理 Fortran、Pascal、Objective-C、Java、Ada,Go 与其他语言;
- Clang+LLVM :苹果公司支持下的 GCC 替代品。预装于MacOS系统。支持C、C++、Objective C;
- Dev C++ :体积小巧,操作简便,支持中文,但是bug太多,几乎调试不了,同时已经有好几年没有得到更新,而且界面也不是太友好,至少已经不具备现在的人的审美特点了。
- Visual C++ :微软的 C++ 开发工具,集成在 Visual Studio 中。支持 C/C++。目前只能在 Windows 系统上安装,一个经典的编译器,但是太老了,容易出现兼容性问题,不推荐;
- Visual Studio Code: VS Code是微软推出的一个跨平台的开源编辑器。虽然它只是个编辑器但是只要你愿意折腾,还是能折腾出IDE(Integrated Development Environment ,集成开发环境)所具有的功能;
- MinGW :将 GCC 编译器等组件移植到 Win32 平台下的产物。支持 C、C++、Objective-C、Fortran 及 Ada;
- MinGW-w64 :MinGW的64位版本(对应windows系统64位)。
推荐的编译器与开发环境
Windows环境:
- 编译器:MinGW-w64(需安装)
- 开发环境:CLion(学生免费)、CodeBlocks(免费)、Visual Studio Code(免费)
MacOS环境:
- 编译器:Clang(系统自带)
- 开发环境:CLion、Xcode(免费)、Visual Studio Code(免费)
Linux环境:
- 编译器:GCC(系统自带)
- 开发环境:CLion(学生免费)、Visual Studio Code(免费)
Hello World!
开启一门新语言的学习,通常会从学编写“
Hello World
”开始。#include <stdio.h>
int main() {
printf("Hello, World!\n");
return 0;
}
让我们分解代码以理解每一行:
include <stdio.h>
:用于生成输出的函数在stdio.h
中的定义。- 为了使用
printf
函数,应首先需要包含所需的文件,也称为头文件。
int main():main() 函数是程序的入口点。 花括号“{}”表示函数(也称为代码块)的开始和结束。
【填空题】填空, 添加 <stdio.h> 头文件#________<stdio.h>
printf()函数的作用:向计算机系统默认的输出设备(一般指终端或显示器)输出一个或多个任意类型的数据。
#include <stdio.h>
int main() {
printf("Hello, World!\n");
return 0;
}
分析以上代码:
- “
\n
”: 是一个转义字符,其意义是“回车换行”。(注: 转义序列始终以反斜杠\
开头) - “
;
”:分号为指示语句的结尾。 - “
return 0
”: 该语句终止main()
函数,并将值0返回给调用进程。 数字0
通常表示程序已成功执行。 任何其他数字表示该程序执行失败。
**说明:** 每个命令和函数后面都需要分号(
;
), C语言据此判断一行是否结束。【填空题】填空,输出“Hi, everyone!”__________("Hi, everyone!");
数据类型
C支持以下基本数据类型:
- char:存放字符数据,如 'x' 和'*'。
- int:存放整型数据, 如 1、32和-234. 存放的数据在-32768和32767之间。
- float:存放浮点数,如0.0003、-122.33和43321.5。
- double:存放双精度浮点值(极大和绩效的浮点数)。
每种类型所需的存储量因平台而异。
C具有内置的sizeof运算符,该运算符给出了特定数据类型的内存要求。
例如:
#include <stdio.h>
int main() {
printf("int: %d \n", sizeof(int));
printf("float: %d \n", sizeof(float));
printf("double: %d \n", sizeof(double));
printf("char: %d \n", sizeof(char));
return 0;
}
程序输出为每种数据类型显示相应的大小(以字节为单位)。
在该程序中,printf语句有两个参数。 第一个参数是带有格式说明符(%d)的输出字符串,而另一个参数返回sizeof值。 在最终输出中,%d(十进制)被第二个参数中的值替换。
- printf: 用于输出的函数。printf语句可具有多个格式说明符,并带有用于替换说明符的相应参数。 格式说明符也称为转换说明符。
- sizeof:sizeof() 是一种内存容量度量函数,功能是返回一个变量或者类型的大小(以字节为单位);在 C 语言中,sizeof() 是一个判断数据类型或者表达式长度的运算符。
- 注意:C语言的数据类型中,没有布尔类型。
【单选题】以下哪个选项是C语言中的有效数据类型?(D)
A. int, bool, stringB. int, double, char, booleanC. int, float, string, charD. int, float, double, char
变量
变量是内存中区域的名称。
变量的命名
变量的名称(也称为标识符)必须以字母或下划线开头,并且可以由字母,数字和下划线 字符组成。
变量命名约定不同,但通常使用带下划线的小写字母来分隔单词,如:snake_case。
在使用变量之前,必须声明变量数据类型。可以通过赋值语句修改变量的值。
如以下语句,声明一个整数变量my_var,赋值为42:
int my_var;my_var = 42;
也可以在单个语句中声明和初始化(分配初始值)变量:
int my_var = 42;
注意: C语言允许变量名以下划线开头, 但是你不应该这么做。因为C语言的一些内置变量以下划线开头, 如果你的变量也以下划线开头,有可能和内置变量撞车(重名)。
关于变量的案例
以下案例,尝试定义不同类型的变量,执行简单的数学运算:
#include <stdio.h>
int main() {
int a, b; // 在同一行上可以定义多个变量
float salary = 56.23;
char letter = 'Z';
a = 8;
b = 34;
int c = a+b;
printf("%d \n", c);
printf("%f \n", salary);
printf("%c \n", letter);
return 0;
}
通过以上例子,不难发现,你可以通过逗号分隔变量,实现在一行上声明多个变量。
另外还需注意2点:
- 将格式说明符用于float(%f)和char(%c)的输出。
- C语言是区分大小写的(大小写敏感),因此my_Variable和my_variable是两个不同的标识符。
说明: 等号 ( = ) 称为赋值运算符。赋值运算符可用来给变量存储值。
原文地址:https://www.lae.la/archives/52.html