Linux学习第四天

一  gcc的使用

1.计算机能识别的唯一语言是二进制语言

语言的发展

c语言是中级语言,具有汇编的特性,同时也具备高级语言可移植的特性。不管什么语言要想被计算机运行,必须转换成机器码。

编译器:将源代码编译成可执行多的代码(程序),相同的代码经过不同的编译可以被不同的计算机所执行。

2 Linux系统常用的编译c语言的编译器是:gcc

c语言程序的编译步骤

gcc默认生成的文件名是a.out,如果要定义生成的文件名用命令:gcc -o

3 程序的执行

Linux下执行程序,直接在终端敲文件名,要带上路径(相对路径或者绝对路径)

./a/out   其中./代表路径

4 vim /etc/network/interfaces         网卡配置文件

if down eth0     关闭网卡      if up eth0      开启网卡

二  hello world

1 头文件的包含方式

<> 默认从/uer/include目录下搜索文件

“”“”先在当前目录下搜索下搜索文件,如果没有再去/usr/include下找

#include“”“../stdio。h”     先在当前目录的上一级目录搜索文件,如果没有再去/usr/include下找

2 stdio.h      c语言的标准输入输出头文件

3 main

有返回值,返回值为int类型,用来表示程序结束状态,如果程序是正常结束返回0,异常结束返回其他值

c语言有且只有一个返回值,且程序是由main函数开始执行的

4{}代码块

5 return 表明main函数结束,下面的部分都不执行

6 printf()是stdio.h文件中的一个函数。使用这个函数必须包含stdio.h这个头文件

7 注释  1  // 单行注释      /**/ 多行注释

8  编码规范

{下面一行内容和{要有四个空格的缩进

单词之间要有空格

不同的逻辑之间要有空行

9 c语言语句是以;结尾

三 内存

1 程序

(1)没有运行的程序就是一堆代码,存在存储设备中(手机,u盘.....)

(2)运行起来的程序,程序会被读到内存中执行,内存中存该程序的可执行代码,数据

2 存储单位

1 bit 位  是一个二进制数字只能表示0 或者1   单位:b

2 Byte   字节,单位B   1B=8b

3 KB   1KB=1024B=2^10B

4 MB   1MB=1024KB=2^20B

5 GB    1GB=1024MB=2^30B

2 如何管理字节

内存为每个字节分配了一个编号,类似于人的身份证号,这个编号叫做内存的地址

编号的位数是固定的

(1)32位系统 编号是32位  进制二进制  大小:4B

(2)64位系统 编号64位  进制二进制  大小:8B

32位系统,内存编号4字节,最大能存多少个字节

范围:00000........0000000(32个0)--------》111111.......1111111(32个1)

                           0                                                    2^32-1

总共2^32字节=4G

3 数据存储

内存存的是二进制数据,以1个字节为例:

(1)无符号数:只有正数,不带正负号

          范围:00000000-------》11111111        0-----》255

(2)有符号数:带正负号的数

内存取最高值为符号位:0:正数        1:负数

正数在内存中存的是数据本身

负数是取绝对值转换成二进制,对每位取反然后加1

比如5 :在内存中的值是00000101

-5:10000101取反    11111010      加1      11111011

实际内存中的中的值是  11111011

0在内存中表示:00000000

人为规定-0在内存中就是-128    就是说10000000这个值就是-128

(3)有符号数的取值范围

10000000------》01111111      -128------》127

有符号数在一个字节范围内

127+1

127在内存中的存储:011111111

1在内存中的存储    :00000001

和                            :10000000

猜你喜欢

转载自blog.csdn.net/weixin_43667336/article/details/84100673