LOADING

加载过慢请开启缓存 浏览器默认开启

C语言

2024/3/4 Tech

C语言

程序结构
#include <stdio.h>
 
int main()
{
   /* 我的第一个 C 程序 */
   printf("Hello, World! \n");
   
   return 0;
}

1.预处理指令 #include <stdio.h>

2.主函数 int main(),每个c文件中只能包含一个main函数

3.注释 单行注释 // 多行注释/*…*/

4.内置函数 printf()

5.函数返回值 return 0

基础语法
基本概念

令牌(token)

printf
(
"Hello, World! \n"
)
;
//每一行为一个token

分号;

printf("Hello, World! \n");
return 0;
//每个语句由;结束

注释

//单行注释
/*多行注释*/

标识符

/*
命名规则
1.由a-z,A-Z或_开头
2.其余部分可使用0-9
3.严格区分大小写
不允许出现特殊符号
*/

关键字

image-20240228145020315
数据类型
image-20240228150129939

void类型

image-20240228152524799

类型转换

//显式类型转换
如:int、float、double之间转换
//隐式类型转换
如:
    double d = 3.1415926;
    int i = (int)d;

冒泡排序

#include<stdio.h>

int main(){
    int a, b, c;
    scanf("%d %d %d",&a, &b, &c);
    int list[] = {a, b, c};
    for(int i=1; i <=3; i++){
        for(int j=i; i <=3; j++){
            if(list[j-1] < list[j]){
                list[j-1] ^= list[j] ^=list[j-1] ^= list[j];
            }
        }
    }
    printf("%d %d %d",list[0], list[1], list[2]);
    return 0;
}

BUG

// 空指针不等于false, 0等价与false

int a = 5;
int *p;
if (p)
    printf("Not NULL"); // "Not NULL"

if (p == NULL)
    printf("Not NULL"); // ""