声明:作为这个系列的开篇,第一篇更多的只是先介绍个概述,xdm莫慌,加油学!
文章目录
- 1.负数在计算机中是以补码表示的,那为什么呢?
- 2.各类存储速度从下往上访问速度提高
- 3.static修饰局部变量,延长生命周期,具体见如下程序段:
- 4.static修饰全部变量(或者函数),改变了作用域(或者说改变了外部链接属性),让静态的全局变量只能在自己的源文件内部使用,外部文件用extern就无法调用了,会提示无法解析外部符号,具体见如下程序段:
- 5.电脑32位/64位代表地址线,一个地址放一个字节byte,(1byte=8bit、1kb=1024byte、mb、gb、tb、pb都是1024倍数)
- 6.int\*p ,定义时用到仅仅是定义类型
- 7.指针大小具体多少看地址,在32位里边是4byte,因为32位一个地址需要的内存就是32bit=4byte。(64位就是8byte)
- 8.结构体操作符
- 9.输出什么都没有,注意细节。
- 10.感受一下,左边for打印1234678910,右边while这,1234后会死循环
- 11.for循环
- 12.0为假,循环0次
- 13.比较字符串不能直接比较,要用库函数strcmp
- 14.结构体的创建和初始化
- 15.补充ASCII表
1.负数在计算机中是以补码表示的,那为什么呢?
因为在有模的计量系统中,减一个数等于加上它的补数,从而实现将减法运算转化为加法运算的目的。(类似时钟调节时间,可以加也可以减)
只要是整数,在内存中存储的都是其补码。正数的补码、源码、反码都一样,负数要算下,源码取反(符号位不要取反)得到反码,然后反码+1得到补码。
2.各类存储速度从下往上访问速度提高
3.static修饰局部变量,延长生命周期,具体见如下程序段:
//作用域和生命周期
//
// 作用域
//局部变量的作用域:就是变量所在的局部范围
//全局变量的作用域:整个工程
//
//
//int g_val = 2021;//全局变量
//
//int main()
//{
// printf("1:%d\n", g_val);
// printf("hehe\n");
// {
// printf("2:%d\n", g_val);
//
// int a = 10;
// printf("a = %d\n", a);
// }
// printf("3:%d\n", g_val);
//
// return 0;
//}
//
//声明一下变量
//extern int g_val;
//
//int main()
//{
// printf("%d\n", g_val);
//
// return 0;
//}
//生命周期
//变量的生命周期:变量的创建和销毁之间的时间段
//
//局部变量的生命周期:进入局部范围生命开始,出局部范围生命结束
//全局变量的生命周期:程序的生命周期
第一段这样结果是23456(a没有销毁)
第二段这样是22222(每次a都销毁了)
4.static修饰全部变量(或者函数),改变了作用域(或者说改变了外部链接属性),让静态的全局变量只能在自己的源文件内部使用,外部文件用extern就无法调用了,会提示无法解析外部符号,具体见如下程序段:
5.电脑32位/64位代表地址线,一个地址放一个字节byte,(1byte=8bit、1kb=1024byte、mb、gb、tb、pb都是1024倍数)
6.int*p ,定义时用到仅仅是定义类型
7.指针大小具体多少看地址,在32位里边是4byte,因为32位一个地址需要的内存就是32bit=4byte。(64位就是8byte)
这个输出全是4就是这个道理。
8.结构体操作符
9.输出什么都没有,注意细节。
10.感受一下,左边for打印1234678910,右边while这,1234后会死循环
11.for循环
在内部改变变量容易死循环
前闭后开写法更有助于理解
12.0为假,循环0次
13.比较字符串不能直接比较,要用库函数strcmp
14.结构体的创建和初始化
15.补充ASCII表
更多推荐
初识C语言【零基础搞定C语言——1】
发布评论