C 基本语法

C 基本语法

❮ C 用户输入

C 数据类型 ❯

C - 基本语法

更新于 2025/6/7 1:52:17

在 C 语言编程 中,"语法"是指程序员编写特定应用程序源代码时所遵循的一套规则。虽然 C 语言中每个关键字都有特定的推荐语法,但在开发 C 语言程序时仍需遵循一些通用规则。

一个典型的 C 语言程序源代码包含以下元素 -

/*Hello World 程序*/ // 注释

#include // 头文件

int a=10; // 全局声明

// main 函数

int main() {

char message[] = "Hello World"; // 局部变量

printf("%s", message);

return 0;

}

C 语言中的标记

C 程序由各种标记组成。标记可以是关键字、标识符、常量、字符串字面量或符号。例如,以下 C 语句由五个标记组成 -

printf("Hello, World!

");

各个标记如下 -

printf

(

"Hello, World!

"

);

C 编译器会识别标记是否为关键字、标识符、注释、文字、运算符或任何其他可识别的特殊符号。此操作由标记生成器在编译过程的第一阶段完成。

C 语言中的标识符

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

C 语言规定了变量、函数或其他编程元素名称的命名规则。它们不是关键字。标识符必须以字母或下划线开头,并且除了字母、数字和下划线之外不能包含任何其他字符。

C 语言不允许在标识符中使用 @、$ 和 % 等标点符号。C 语言是区分大小写的编程语言。因此,在 C 语言中,Manpower 和 manpower 是两个不同的标识符。以下是一些可接受标识符的示例 -

mohd zara abc move_name a_123

myname50 _temp j a23b9 retVal

C 语言中的关键字

C 语言中最重要的部分是关键字。关键字是保留字,它们具有预定义的含义和规定的语法。在 ANSI C 语言中,所有关键字均采用小写字母。程序员需要选择正确的关键字来构建手头问题的解决方案。学习编程的本质就是学会正确使用关键字。

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

auto

else

long

switch

break

enum

register

typedef

case

extern

return

union

char

float

short

unsigned

const

for

signed

void

continue

goto

sizeof

volatile

default

if

static

while

do

int

struct

_Packed

double

除了本章讲解的基本语法外,C 语言中的每个关键字都有其明确定义的语法。每个关键字的用法将在后续章节中讲解。

C 语言中的分号

在 C 语言程序中,分号是语句终止符。也就是说,每个单独的语句都必须以分号结尾。分号表示一个逻辑实体的结束。

以下给出了两个不同的语句 -

printf("Hello, World!

");

return 0;

由于分号";"只是 C 语言语句的分隔符,因此 C 语言程序中一个物理行中可能有多个语句。同样,在源代码中,单个语句可能跨越多行。

以下代码在 C 语言中完全有效。一行代码中包含多个语句 -

int a=10; if (a>=50) printf("pass"); else printf("fail");

即使语句跨越多行,以下代码仍然有效 -

if

(a>=50)

printf("pass");

else printf("fail");

C 语言中的注释

注释就像 C 程序中的帮助文本,会被编译器忽略。它们以 /* 开头,以字符 */ 结尾,如下所示 -

/* 我的第一个 C 语言程序 */

注释中不能包含注释,注释也不能出现在字符串或字符字面量中。

源代码

C 程序是一个文本文件,包含一系列语句。该文件必须以 .c 作为扩展名。C 编译器在编译过程中仅识别 .c 文件。 C 语言的关键字和其他标识符仅使用英文字母,但字符串字面值可以包含任何 Unicode 字符。

main() 函数

每个 C 程序必须有一个(且只有一个)main() 函数,编译器从该函数开始执行代码。但是,main() 函数不必位于 .c 文件代码的开头。C 程序中可以有任意数量的函数。如果一个函数在其定义之前调用了任何其他函数,则应该对其进行前向声明。

头文件

除了关键字之外,C 程序通常还需要调用头文件库中的预定义函数。所需的头文件可以通过 #include 预处理器指令 导入。所有 #include 语句都必须位于源代码的开头。

变量声明

C 是一种静态类型语言。它要求程序中出现的所有变量在使用前必须声明。变量可以全局声明,即在任何函数之外,也可以在函数的作用域内局部声明。变量只能存储其声明类型的值。这是 C 语言的重要规则之一。

C 程序中的语句

语句是程序的基本构建块。main() 函数中的语句默认按从上到下的顺序执行。该顺序由条件语句或循环结构控制。作为一项基本语法规则,每个语句末尾都必须有分号 (;)。

C 程序中的空格

在编译源代码时,编译器会忽略空格。空格是 C 语言中用来描述空格、制表符、换行符和注释的术语。虽然使用空格可以提高代码的可读性,但它们对编译器来说意义不大(除非它们是字符串字面量的一部分,出现在双引号内)。仅包含空格(可能带有注释)的行称为空行,C 编译器会完全忽略它。

空格将语句的各个部分分隔开,并使编译器能够识别语句中一个元素(例如 int)的结束位置和下一个元素的开始位置。因此,在以下语句中 -

int age;

int 和 age 之间必须至少有一个空格(通常为空格),以便编译器能够区分它们。另一方面,在以下语句中 -

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

"fruit"和"="之间以及"="和"apples"之间不需要空格,但如果您想提高可读性,可以随意添加一些空格。

C 语言中的复合语句

通常,您需要将一个内聚的语句块定义为一个编程逻辑单元。例如,您可能希望在某个逻辑表达式为真时执行多个语句,或者在循环块中执行多个语句。类似地,用户定义函数可能包含多个语句。在这种情况下,语句会被组合在一起形成复合语句。C 语言使用花括号进行这种组合。

{

Statement1;

Statement2;

. . .

. . .

}

在下面的代码中,if 和 else 部分各有一个语句块。

int marks = 40;

if (marks<50) {

printf("Result: Fail

");

printf ("Better Luck next time");

}

else {

printf("Result: Pass

");

printf("Congratulations");

}

函数定义中也使用花括号:

float area_of_square(float side) {

float area = pow(side,2);

return area;

}

使用 struct、union 或 enum 定义自定义类型也需要使用花括号将多个语句组合在一起。

struct student {

char name[20];

int marks, age;

};

花括号也声明了一个数组,如下所示 -

int marks[ ]={50,56,76,67,43};

❮ C 用户输入

C 数据类型 ❯

相关数据

狗怕蛇吗 在一些情况下狗是不怕蛇的
下载365App

狗怕蛇吗 在一些情况下狗是不怕蛇的

⌛ 08-06 👁️ 2740
赣烟香烟价格表和图片大全
bt365最快线路检测

赣烟香烟价格表和图片大全

⌛ 11-10 👁️ 2769
魔方世界安卓官方版v1.1
bt365最快线路检测

魔方世界安卓官方版v1.1

⌛ 07-07 👁️ 8905