C语言学习笔记

2024-03-23 1155阅读

温馨提示:这篇文章已超过405天没有更新,请注意相关的内容是否还可用!

基础语法

注释

int main()
{
    //这是单行注释
/*
 * 多行注释
 */
}

变量

变量声明 

C语言学习笔记
(图片来源网络,侵删)

格式:type name

int main()
{
    //变量的声明
    int num;
    //变量使用
    num=1;
    //声明多个变量
    int num1,num2;
    //变量的初始化
    int num3=1;
  
}
int num;
num=10;

常量

const double PI = 3.14;

基础数据类型

数据类型存储大小范围
char1 字节-128 到 127
signed char1 字节-128 到 127
unsigned char1 字节0 到 255
short2 字节-32,768 到 32,767
signed short2 字节-32,768 到 32,767
unsigned short2 字节0 到 65,535
int2 或 4 字节-32,768 到 32,767
signed int2 或 4 字节-32,768 到 32,767
unsigned int2 或 4 字节0 到 65,535
short int2 字节-32,768 到 32,767
signed short int2 字节-32,768 到 32,767
unsigned short int2 字节0 到 65,535
long int4 字节-2,147,483,648 到 2,147,483,647
signed long int4 字节-2,147,483,648 到 2,147,483,647
unsigned long int4 字节0 到 4,294,967,295
float4 字节
double8 字节
long double10 字节

 整数

int id;

unsigned只能储存零值和正数。

unsigned int x;
int y;

浮点数

float salary;

字符

char test = 'h';

运算符

类型转换

语法:(type)name

注意:始终建议将较低的值转换为较高的值,以避免数据丢失。

输入

输出

数据类型格式说明符
int%d
char%c
float%f
double%lf
short int%hd
unsigned int%u
long int%li
long long int%lli
unsigned long int%lu
unsigned long long int%llu
signed char%c
unsigned char%c
long double%Lf

整数输出 

int main() {
    int num=10;
    printf("%d",num);
}

单精度浮点和双精度浮点数输出

int main() {
    float num=1.3;
    double num1=1.4;
    printf("%f\n",num);
    printf("%lf\n",num1);
}

打印字符

int main() {
    char c='1';
    printf("%c\n",c);
}

 检查变量的大小

格式:sizeof(name)

int main() {
    short b;
    int c;
    long long e;
    printf("%d\n",sizeof(b));
    printf("%d\n",sizeof(c));
    printf("%d\n",sizeof(e));
}

空类型

void是空类型,一般用于函数的返回类型表示,表示该函数啥都不返回。

例如,如果函数不返回任何内容,则其返回类型应为void。

储存类

复合数据类型

数组

数组的语法 : Type Name[Size];

int main()
{
    //数组的声明
    int arr[10];
    //数组的初始化
    int arr1[10]={1,2};
}

在C语言中超时数组索引不会报错。 

int main()
{
    //数组声明长度,超出索引不会报错
    int arr[1];
    arr[0]=0;
    arr[1]=1;
    arr[2]=2;
    for (int i = 0; i  

字符串

在C语言编程中,字符串是以null字符\0结束的字符序列。

//声明字符串
char s[5];
//初始化字符串
char c[] = "abcd";
char c[50] = "abcd";
char c[] = {'a', 'b', 'c', 'd', '\0'};
char c[5] = {'a', 'b', 'c', 'd', '\0'};

 指针

指针是用来储存变量地址的特殊变量

声明指针

语法:type *name

int *p

指针赋值变量地址

int main()
{
    int *p;
    int num=5;
    p=#
    printf("%d", *p);
}

流程控制

for

while

break continue

if...else

swtich

goto

函数

序号C函数方面语法
1函数声明return_type function_name(argument_list);
2函数调用function_name(argument_list)
3函数定义return_type function_name(argument_list){function body;}

没有返回值

void hello(){
    printf("hello c");
}

结构体

声明结构体

int main(){
//定义结构体
    struct SIMPLE
    {
        int a;
    };
//声明结构体
    struct SIMPLE t1{}, t2[20], *t3;
    printf("%d",t1.a);
}

typedef 声明结构体 

int main(){
//定义结构体
    typedef struct
    {
        int a;
    }SIMPLE;
//声明结构体
    SIMPLE t1{}, t2[20], *t3;
    printf("%d",t1.a);
}

初始化匿名结构

int main(){
struct {
    int a;
};
}

初始化匿名结构体带默认值

int main(){
struct {
    int a;
}s={1};
}

嵌套结构体

结构体包括其他结构

结构体包括指向自己的指针

struct NODE
{
    char string[100];
    struct NODE *next_node;
};

指向结构的指针

int main(){
//定义结构体
    typedef struct
    {
        int a;
    }SIMPLE;
//声明结构体指针
    SIMPLE  *pt,t;
    t.a=1;
    pt=&t;
    printf("%d",pt->a);
}
VPS购买请点击我

免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

目录[+]