C语言入门


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
符攀飞 符攀飞
接近 3 年前
129

扫描下方二维码手机阅读文章

0