C语言基本知识点

本文详细介绍了C语言的基本知识点,包括程序结构、数据类型(整数和浮点型)、变量和常量、左值和右值、存储类、运算符、条件语句、循环语句、函数、作用域、数组、字符串、指针以及自定义数据类型(枚举、结构体、共用体和位域)。还涵盖了C语言中的注意事项和不同标准(C99与C11)的区别。
摘要由CSDN通过智能技术生成

C程序结构

C 程序主要包括以下部分:

  • 预处理器指令
  • 函数
  • 变量
  • 语句 & 表达式
  • 注释
    以下是一个例子
#include <stdio.h>
int main()
{
   
   /* 我的第一个 C 程序 \*/
   return 0;
}

数据类型

整数类型

char 1 字节 -128 到 127 或 0 到 255
unsigned char 1 字节 0 到 255
signed char 1 字节 -128 到 127
int 2 或 4 字节 -32,768 到 32,767 或 -2,147,483,648 到 2,147,483,647
unsigned int 2 或 4 字节 0 到 65,535 或 0 到 4,294,967,295
short 2 字节 -32,768 到 32,767
unsigned short 2 字节 0 到 65,535
long 4 字节 -2,147,483,648 到 2,147,483,647
unsigned long 4 字节 0 到 4,294,967,295

浮点类型

float 4 字节 1.2E-38 到 3.4E+38 6 位小数
double 8 字节 2.3E-308 到 1.7E+308 15 位小数
long double 16 字节 3.4E-4932 到 1.1E+4932 19 位小数

变量和常量

变量

int a;//声明,也是定义,是需要建立存储空间的
extern int a; //只是声明,不是定义。不需要建立存储空间的,说明变量a可以在别的文件中定义

常量

在 C 中,有两种简单的定义常量的方式:
使用 #define 预处理器。#define LENGTH 10
使用 const 关键字。const int LENGTH = 10;

左值和右值

C 中有两种类型的表达式:
左值(lvalue):指向内存位置的表达式被称为左值(lvalue)表达式。左值可以出现在赋值号的左边或右边。
右值(rvalue):术语右值(rvalue)指的是存储在内存中某些地址的数值。右值是不能对其进行赋值的表达式,也就是说,右值可以出现在赋值号的右边,但不能出现在赋值号的左边。

C存储类

存储类定义 C 程序中变量/函数的范围(可见性)和生命周期。这些说明符放置在它们所修饰的类型之前。

  • auto,是所有局部变量默认的存储类。
  • register,储在寄存器中而不是 RAM 中的局部变量
  • static,指示编译器在程序的生命周期内保持局部变量的存在,而不需要在每次它进入和离开作用域时进行创建和销毁。因此,使用 static 修饰局部变量可以在函数调用之间保持局部变量的值。
  • extern,extern 存储类用于提供一个全局变量的引用,全局变量对所有的程序文件都是可见的。当您使用 ‘extern’ 时,对于无法初始化的变量,会把变量名指向一个之前定义过的存储位置。当您有多个文件且定义了一个可以在其他文件中使用的全局变量或函数时,可以在其他文件中使用 extern 来得到已定义的变量或函数的引用。可以这么理,extern 是用来在另一个文件中声明一个全局变量或函数。extern 修饰符通常用于当有两个或多个文件共享相同的全局变量或函数的时候

运算符

  • 算术运算符,略
  • 关系运算符,与&&,或||,非!
  • 位运算符,&与,|或,~取反,^异或,>>右移
  • 赋值运算符,略
  • 杂项运算符,sizeof & 三元
  • 运算符优先级,略

条件语句

  • if else
  • switch
switch(表达式)
{
   
    case 常量表达式1:语句1;[break];
    case 常量表达式2:语句2;[break]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值