2022.10.18

又是被隔离的一天,在寝室快疯了,唉还要多久才解封啊,,,受不了了

这是我的github:718768154 (cc over) · GitHub

以及我的gitee:太晚 (yibaichen123) - Gitee.com

小白初学者,愿接受大佬指教噢

总结一下昨天所学的小知识

1.关键字 typedef

//int main()
//{
//	//int float;//关键字不能被定义成变量
//	typedef unsigned int u_int;
//	//typedef - l类型定义 - 类型重定义
//	unsigned int nnum = 20;//全写
//	u_int num2 = 20;//缩写
//	//张三 - 小三 
//	return 0;
//}

2.关键字static

static 是用来修饰变量和函数的
1. 修饰局部变量-称为静态局部变量
//代码1
#include <stdio.h>
void test()
{
    int i = 0;
    i++;
    printf("%d ", i);
}
int main()
{
 int i = 0;
    for(i=0; i<10; i++)
   {
        test();
   }
    return 0; }
//代码2
#include <stdio.h>
void test()
{
    //static修饰局部变量
    static int i = 0;
    i++;
    printf("%d ", i);
}
int main()
{
 int i = 0;
    for(i=0; i<10; i++)
   {
        test();
   }
    return 0; 
}
对比代码 1 和代码 2 的效果理解 static 修饰局部变量的意义。
结论:
static修饰局部变量改变了变量的生命周期
让静态局部变量出了作用域依然存在,到程序结束,生命周期才结束。
2. 修饰全局变量-称为静态全局变量
//代码1
//add.c
int g_val = 2018;
//test.c
int main()
{
    printf("%d\n", g_val);
    return 0; }
//代码2
//add.c
static int g_val = 2018;
//test.c
int main()
{
    printf("%d\n", g_val);
    return 0; }
代码 1 正常,代码 2 在编译的时候会出现连接性错误。
结论:
一个全局变量被 static 修饰,使得这个全局变量只能在本源文件内使用,不能在其他源文件内使
用。
3. 修饰函数-称为静态函数
//代码1
//add.c
int Add(int x, int y) {
    return c+y; }
//test.c
int main()
{
    printf("%d\n", Add(2, 3));
    return 0;
}
//代码2
//add.c
static int Add(int x, int y) {
    return c+y; }
//test.c
int main()
{
    printf("%d\n", Add(2, 3));
    return 0; }
代码 1 正常,代码 2 在编译的时候会出现连接性错误 .
结论:
一个函数被 static 修饰,使得这个函数只能在本源文件内使用,不能在其他源文件内使用。
剩余关键字后续课程中陆续会讲解。

3.#define 定义常量和宏

//define定义标识符常量
#define MAX 1000
//define定义宏
#define ADD(x, y) ((x)+(y))
#include <stdio.h>
int main()
{
    int sum = ADD(2, 3);
    printf("sum = %d\n", sum);
    
    sum = 10*ADD(2, 3);
    printf("sum = %d\n", sum);
    
    return 0; }

4. 指针

4.1  内存
内存是电脑上特别重要的存储器,计算机中程序的运行都是在内存中进行的 。
所以为了有效的使用内存,就把内存划分成一个个小的内存单元,每个内存单元的大小是 1 个节
为了能够有效的访问到内存的每个单元,就给内存单元进行了编号,这些编号被称为该 内存单元的地
变量是创建内存中的(在内存中分配空间的),每个内存单元都有地址,所以变量也是有地址的。
取出变量地址如下:
#include <stdio.h>
int main()
{
int num = 10;
&num;//取出num的地址
   //注:这里num的4个字节,每个字节都有地址,取出的是第一个字节的地址(较小的地址)
printf("%p\n", &num);//打印地址,%p是以地址的形式打印
return 0;
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
| 序号 | 日期 | 说明 | | ---- | ----------- | ---- | | 1 | 2022.12.01 | | | 2 | 2022.12.02 | | | 3 | 2022.12.03 | | | 4 | 2022.12.04 | | | 5 | 2022.12.05 | | | 6 | 2022.12.06 | | | 7 | 2022.12.07 | | | 8 | 2022.12.08 | | | 9 | 2022.12.09 | | | 10 | 2022.12.10 | | | 11 | 2022.12.11 | | | 12 | 2022.12.12 | | | 13 | 2022.12.13 | | | 14 | 2022.12.14 | | | 15 | 2022.12.15 | | | 16 | 2022.12.16 | | | 17 | 2022.12.17 | | | 18 | 2022.12.18 | | | 19 | 2022.12.19 | | | 20 | 2022.12.20 | | | 21 | 2022.12.21 | | | 22 | 2022.12.22 | | | 23 | 2022.12.23 | | | 24 | 2022.12.24 | | | 25 | 2022.12.25 | | | 26 | 2022.12.26 | | | 27 | 2022.12.27 | | | 28 | 2022.12.28 | | | 29 | 2022.12.29 | | | 30 | 2022.12.30 | | | 31 | 2022.12.31 | | | 32 | 2023.01.01 | | | 33 | 2023.01.02 | | | 34 | 2023.01.03 | | | 35 | 2023.01.04 | | | 36 | 2023.01.05 | | | 37 | 2023.01.06 | | | 38 | 2023.01.07 | | | 39 | 2023.01.08 | | | 40 | 2023.01.09 | | | 41 | 2023.01.10 | | | 42 | 2023.01.11 | | | 43 | 2023.01.12 | | | 44 | 2023.01.13 | | | 45 | 2023.01.14 | | | 46 | 2023.01.15 | | | 47 | 2023.01.16 | | | 48 | 2023.01.17 | | | 49 | 2023.01.18 | | | 50 | 2023.01.19 | | | 51 | 2023.01.20 | | | 52 | 2023.01.21 | | | 53 | 2023.01.22 | | | 54 | 2023.01.23 | | | 55 | 2023.01.24 | | | 56 | 2023.01.25 | | | 57 | 2023.01.26 | | | 58 | 2023.01.27 | | | 59 | 2023.01.28 | | | 60 | 2023.01.29 | | | 61 | 2023.01.30 | | | 62 | 2023.01.31 | | | 63 | 2023.02.01 | | | 64 | 2023.02.02 | | | 65 | 2023.02.03 | | | 66 | 2023.02.04 | | | 67 | 2023.02.05 | | | 68 | 2023.02.06 | | | 69 | 2023.02.07 | | | 70 | 2023.02.08 | | | 71 | 2023.02.09 | | | 72 | 2023.02.10 | | | 73 | 2023.02.11 | | | 74 | 2023.02.12 | | | 75 | 2023.02.13 | | | 76 | 2023.02.14 | | | 77 | 2023.02.15 | | | 78 | 2023.02.16 | | | 79 | 2023.02.17 | | | 80 | 2023.02.18 | | | 81 | 2023.02.19 | | | 82 | 2023.02.20 | | | 83 | 2023.02.21 | | | 84 | 2023.02.22 | | | 85 | 2023.02.23 | | | 86 | 2023.02.24 | | | 87 | 2023.02.25 | | | 88 | 2023.02.26 | | | 89 | 2023.02.27 | | | 90 | 2023.02.28 | | | 91 | 2023.03.01 | | | 92 | 2023.03.02 | | | 93 | 2023.03.03 | | | 94 | 2023.03.04 | | | 95 | 2023.03.05 | | | 96 | 2023.03.06 | | | 97 | 2023.03.07 | | | 98 | 2023.03.08 | | | 99 | 2023.03.09 | | | 100 | 2023.03.10 | | | 101 | 2023.03.11 | | | 102 | 2023.03.12 | | | 103 | 2023.03.13 | | | 104 | 2023.03.14 | | | 105 | 2023.03.15 | | | 106 | 2023.03.16 | | | 107 | 2023.03.17 | | | 108 | 2023.03.18 | | | 109 | 2023.03.19 | | | 110 | 2023.03.20 | | | 111 | 2023.03.21 | | | 112 | 2023.03.22 | | | 113 | 2023.03.23 | | | 114 | 2023.03.24 | | | 115 | 2023.03.25 | |

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

这是什么error

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值