c语言笔记(翁凯男神

哼,要记得好好学习去泡帅哥吖
在这里插入图片描述

一、快速入门

%p

输出地址
在这里插入图片描述

#include <stdio.h>
void f(int *p);
int main(){
	int i = 1;
	printf("%p", &i);
	f(&i);
	return 0;
}

void f(int *p){
	printf("\n%p", p);
} 

%lu

long unsigned数据类型无符号长整数或无符号长浮点数

二、指针

运算符& vs *

& 取得变量的地址
*记录地址的变量
在这里插入图片描述

const & 指针

在这里插入图片描述

指针的运算

加减,比较
在这里插入图片描述
在这里插入图片描述

0地址

想要用到0地址时,可用null符号
在这里插入图片描述

何时用指针(指针功能

在这里插入图片描述

#include <stdio.h>
#include <stdlib.h>
int main(){//动态申请内存eg
	int *a, n;
	scanf("%d", &n);
	a = (int*) malloc (n * sizeof(int));
	for(int i = 0; i < n; i++){
		a[i] = i + 1;
		printf("%d ", a[i]);
	}
	free(a);//有借有还,计算机届道德典范 
	return 0;
}


free()

在这里插入图片描述

三、字符串

what :以0结尾的一串字符


在这里插入图片描述

字符串常量

在这里插入图片描述

指针 vs 数组

在这里插入图片描述
在这里插入图片描述

字符串的输入和输出

在这里插入图片描述

for 安全输出by指定长度
在这里插入图片描述

空字符串的正确定义

在这里插入图片描述

四、枚举

在这里插入图片描述

五、结构体

在这里插入图片描述

六、类型定义

在这里插入图片描述

七、联合union

在这里插入图片描述

八、本地变量 vs 全局变量

about全局变量

what

在这里插入图片描述

全局变量初始化

在这里插入图片描述

静态本地变量(挂着本地变量之名的全局变量

在这里插入图片描述

#include <stdio.h>
int a = 0;
int main(){
	int a1 = 1;
	static int a2 = 2;
//	{
//		int a = 2;
//		printf("%s %d\n", __func__, a);
//	}
//	printf("%s %d\n", __func__, a);
	printf("%p\n", &a);
	printf("%p\n%p\n", &a1, &a2); //a和a2地址相近 
	return 0;
} 

返回指针的函数

在这里插入图片描述

使用时注意

在这里插入图片描述

九、宏定义

在这里插入图片描述
在这里插入图片描述
有值的宏定义
在这里插入图片描述
无值的宏定义=》用来做条件编译
在这里插入图片描述
预定义的“维密天使”//带翅膀
在这里插入图片描述

带参数的宏定义

因为只是简单的文本替换,注意带括号
在这里插入图片描述

不要画蛇添足加分号,人家宏不是c
反例:
在这里插入图片描述
在这里插入图片描述

十、大程序

在这里插入图片描述

头文件中<> vs “”

在这里插入图片描述

易混区and解决

在这里插入图片描述
在这里插入图片描述
不对外公开的函数
在这里插入图片描述

声明和定义

在这里插入图片描述
在这里插入图片描述

十一、格式化输入和输出

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
scanf和printf的返回值
在这里插入图片描述

fopen

在这里插入图片描述

十二、二进制文件

在这里插入图片描述
二进制文件 vs 文本文件
在这里插入图片描述

十三、移位

在这里插入图片描述

posted @ 2022-03-22 23:11  Moliay  阅读(18)  评论(0编辑  收藏  举报