C语言关键字

简介: C语言第五弹

前言


今天我们一起学习C语言第五弹。

提示:以下是本篇文章正文内容,下面案例可供参考

一、关键字有什么?


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

二、关键字的作用的举例


1.auto示例:


代码如下(示例):

//auto的作用示例:
#include<stdio.h>
int main()
{
auto int a=10;//局部变量(自动变量),自动创建,自动销毁(auto可以省略掉)
return 0;
}

2.register示例:


//register - 寄存器
//计算机上的储存设备:硬盘,内存,高速缓存,寄存器(4 byte)
#include<stdio.h>
int main()
{
  register int nm=100;//建议把100放在寄存器中储存(频繁大量的使用)
  return 0;
}

3.typedef示例:


代码如下(示例):

//typedef - 类型重命名
#include<stdio.h>
typedef unsigned int uint;
int main()
{
  unsingned int num1=100;
  uint num2=200;
  retuen 0;
}

3.static示例:


static的作用:

1.修饰局部变量

2.修饰全局变量

3.修饰函数

一、static修饰局部变量时:


一个普通的局部变量是放在栈区的 ,而被static修饰的局部变量,是放在内存的静态区的存储位置发生变化这使得局部变量出了作用域不会被销毁,而影响了变量的声明周期(并不是说static修饰的a不能被修改)

#include<stdio.h>
void test()
{
  int a = 1;
  a++;
  printf("%d ", a);
}
int main()
{
  int i = 0;
  while (i < 10)
  {
    test();
    i++;
  }
  return 0;
}

但当用static修饰后就会发生如下改变:

#include<stdio.h>
void test()
{
  static int a = 1;
  a++;
  printf("%d ", a);
}
int main()
{
  int i = 0;
  while (i < 10)
  {
    test();
    i++;
  }
  return 0;
}

二、static修饰全局变量


1.一个全局变量在整个工程中都可以使用,全局变量具有外部链接属性,在其他源文件内部只要适当声明就可以使用

2.但static修饰全局变量时,全局变量的外部链接属性就变成了内部链接属性,只能在自己所在的.c文件中使用,其他的.c文件中不可以使用,影响了变量的作用域

#include<stdio.h>
int g_val = 2022;
int main()
{
  printf("%d\n", g_val);
  return 0;
}

当然也可以写成以下这种形式不过必须声明一下才可以

但是当用static修饰时就会发生错误

三、static修饰函数


1.函数具有外部链接属性,在其他源文件内部只要适当声明就可以使用

2.但static修饰函数时,函数的外部链接属性就变成了内部链接属性,只能在自己所在的.c文件中使用,其他的.c文件中不可以使用,最终相当于影响了作用域

#include<stdio.h>
int Add(int x,int y)
{
  int z=x+y;
  return z;
}
int main()
{
  int a=10;
  int b=20;
  int sum=Add(a,b);
  printf("%d\n",sum);
  return 0;
}

4.define示例:


1.定义常量

#include<stdio.h>
#define M 100
#define STR "hello word"
int main()
{
  printf("%d\n",M);
  printf("%s\n",STR);
}

2.定义宏

#include<stdio.h>
#define MAX(x,y) ((x)>(y)?(x):(y))
int main()
{
  int a=10;
  int b=20;
  int m=MAX(a,b);
  printf("%d\n",m);
  return 0;
}

总结


以上就是今天要做的笔记的内容,本文仅仅简单介绍了部分关键字的作用。

相关文章
|
25天前
|
存储 数据可视化 编译器
【C语言】union 关键字详解
联合体(`union`)是一种强大的数据结构,在C语言中具有广泛的应用。通过共享内存位置,联合体可以在不同时间存储不同类型的数据,从而节省内存。在嵌入式系统、硬件编程和协议解析等领域,联合体的使用尤为常见。理解和正确使用联合体可以使代码更加高效和灵活,特别是在内存受限的系统中。
66 3
【C语言】union 关键字详解
|
25天前
|
编译器 C语言
【C语言】extern 关键字详解
`extern` 关键字在C语言中用于跨文件共享变量和函数的声明。它允许你在一个文件中声明变量或函数,而在其他文件中定义和使用它们。理解 `extern` 的使用可以帮助你组织和管理大型项目的代码。
72 3
|
25天前
|
C语言
【C语言】break 关键字详解
- `break` 关键字用于提前退出循环体或 `switch` 语句的执行。 - 在 `for`、`while` 和 `do-while` 循环中,`break` 可以帮助程序在满足特定条件时退出循环。 - 在 `switch` 语句中,`break` 用于终止 `case` 代码块的执行,避免代码“穿透”到下一个 `case`。 - 注意 `break` 只会退出最内层的循环或 `switch` 语句,确保在嵌套结构中正确使用 `break` 以避免意外的控制流行为。
84 2
|
25天前
|
传感器 安全 编译器
【C语言】enum 关键字详解
`enum`关键字在C语言中提供了一种简洁而高效的方法来定义一组相关的常量。通过使用枚举,可以提高代码的可读性、可维护性,并减少错误的发生。在实际应用中,枚举广泛用于表示状态、命令、错误码等,为开发者提供了更清晰的代码结构和更方便的调试手段。通过合理使用枚举,可以编写出更高质量、更易维护的C语言程序。
105 2
|
25天前
|
缓存 安全 编译器
【C语言】volatile 关键字详解
`volatile` 关键字在 C 语言中用于防止编译器对某些变量进行优化,确保每次访问该变量时都直接从内存中读取最新的值。它主要用于处理硬件寄存器和多线程中的共享变量。然而,`volatile` 不保证操作的原子性和顺序,因此在多线程环境中,仍然需要适当的同步机制来确保线程安全。
60 2
|
25天前
|
存储 编译器 程序员
【C语言】auto 关键字详解
`auto` 关键字用于声明局部变量的自动存储类,其作用主要体现在变量的生命周期上。尽管现代C语言中 `auto` 的使用较少,理解其历史背景和作用对于掌握C语言的存储类及变量管理仍然很重要。局部变量默认即为 `auto` 类型,因此在实际编程中,通常不需要显式声明 `auto`。了解 `auto` 关键字有助于更好地理解C语言的存储类及其在不同场景中的应用。
45 1
|
25天前
|
C语言
【C语言】continue 关键字详解
`continue` 关键字在 C 语言中用于跳过当前循环中的剩余代码,并立即开始下一次迭代。它主要用于控制循环中的流程,使程序在满足特定条件时跳过某些代码。
59 1
【C语言】continue 关键字详解
|
25天前
|
存储 C语言
【C语言】static 关键字详解
`static` 关键字在C语言中用于控制变量和函数的作用域和生命周期。它可以用于局部变量、全局变量和函数,具有不同的效果。理解 `static` 关键字的用法有助于封装和管理代码,提高代码的可维护性和可靠性。
39 3
|
25天前
|
C语言
【C语言】return 关键字详解 -《回家的诱惑 ! 》
`return` 关键字在 C 语言中用于终止函数的执行,并将控制权返回给调用者。根据函数的类型,`return` 还可以返回一个值。它是函数控制流中的重要组成部分。
62 2
|
25天前
|
C语言
【C语言】sizeof 关键字详解
`sizeof` 关键字在C语言中用于计算数据类型或变量在内存中占用的字节数。它是一个编译时操作符,对性能没有影响。`sizeof` 可以用于基本数据类型、数组、结构体、指针等,了解和正确使用 `sizeof` 对于内存管理和调试程序非常重要。
49 2