C语言&关键字

文章详细介绍了C语言中的关键字,包括数据类型如void、char、int、float等,构造类型如struct、union、enum,以及控制流程关键字如if、for、while,还有预编译处理符如#define和#include等,深入解析了它们的功能和用法。
摘要由CSDN通过智能技术生成

C语言的关键字是一种自带的能实现一些特殊功能的字符

ANSI标准定义的C语言关键字共32个:

 auto  double  int  struct  break  else  long  switch


 case  enum  register  typedef  char  extern  return  union


 const  float  short  unsigned  continue  for  signed  void


 default  goto  sizeof  volatile  do  if  while  static
 

数据类型关键字

>  void:声明函数无返回值或无参数,声明无类型指针

void function(void)
{
    void * point = Null;
}


>  char:字符型类型数据,属于整型数据的一种 
>  int:整型数据,通常为编译器指定的机器字长 
>  float:单精度浮点型数据,属于浮点数据的一种 
>  double:双精度浮点型数据,属于浮点数据的一种
>  short:修饰int,短整型数据,可省略被修饰的int  
>  long:修饰int,长整形数据,可省略被修饰的int 


>  signed:修饰整型数据,有符号数据类型  
>  unsigned:修饰整型数据,无符号数据类型

signed char str = 'a';
unsigned char str = 'a';

构造类型关键字

>  struct:结构体声明  
>  union:共用体声明  
>  enum:枚举声明  

struct str
{
    int a;
    char b;
};

union str
{
    char a;
    char b;
};

enum str
{
    a,
    b,
};


>  typedef:声明类型别名 
>  sizeof:得到特定类型或特定类型变量的大小

typedef unsigned char Uint8_t;

int main ()
{

    printf("%d",sizeof(int));
    return 0;
    
}


>  auto:指定为自动变量,由编译器自动分配及释放。通常在栈上分配 
>  static:指定为静态变量,分配在静态变量区,修饰函数时,指定函数作用域为文件内部 

int a = 1;
int b = 2;

static int Add(int a , int b )//被static修饰的函数只能在当前文件使用不能在外部调用
{
    return a + b;
}

int main ()
{
    {
        static int c = 2;//被static修饰的局部变量生命周期延长到程序结束,作用域还是在{}内
    }

    printf("%d",add(a,b));

    return 0 ;
}


>  extern:指定对应变量为外部变量,即在另外的目标文件中定义,可以认为是约定由另外文件声明 
>  const:与volatile合称“cv特性”,指定变量不可被当前线程/进程改变(但有可能被系统或其他线程/进程改变)
 

控制类型关键字

>  return:用在函数体中,返回特定值(或者是void值,即不返回值)  
>  continue:结束当前循环,开始下一轮循环 
>  goto:无条件跳转语句
 

>  if:条件语句  else:条件语句否定分支(与if连用)  

int a = 1;

int main ()
{
    if(a == 1)
    {
        printf("hello !");
    }
    else
    {
        printf("error");
    }

    return 0;
}


>  switch:开关语句(多重分支语句)  

int a = 1;

int main ()
{
    switch (a)
	{
    case 1:
		printf("hello would !");
		break;

	default:
		break;
	}

    return 0;
    
}


>  case:开关语句中的分支标记 

>  break:跳出当前循环或switch结构  
>  default:开关语句中的“其他”分治,可选

>  for:for循环结构,for(1;2;3)4;的执行顺序为1->2->4->3->2...循环,其中2为循环条件 

int a = 1;

int main()
{
    for(a = 0;a < 100;a ++)
    {
        printf("hello !");
    }
}


>  do:do循环结构,do 1 while(2);的执行顺序是1->2->1...循环,2为循环条件 

int a = 100;

int main()
{
   do
        printf("hello !");

   while(a --);
    
}


>  while:while循环结构,while(1) 2;的执行顺序是1->2->1...循环,1为循环条件
     以上循环语句,当循环条件表达式为真则继续循环,为假则跳出循环。

int a = 1;

int main()
{
    while(a)
    {
        printf("hello !");
    }
}

预编译处理符 “#”
> #include 包含.h头文件

#include <stdio.h> //在编译器安装路下搜索头文件
#include "stdio.h"//在工程目录下搜索头文件


> #define 宏定义

#define ABC 123

ABC这个字符被定义为123


> #ifdef 如果宏定义了某个对象,则执行内部语句,#endif结束
> #ifndef 如果没宏定义某个对象,则执行内部语句,#endif结束


> #if
> #else
> #else if


> #endif 预处理结束符
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值