C语言(一)

一.gcc的使用
1.计算机能识别的唯一语言是机器语言
语言的发展:

在这里插入图片描述
C语言是中级语言,具有汇编的特性,同时也具备高级语言可移植等特性。

编译器:将原来的代码(源代码)编译成计算机可执行的代码(程序)
相同的代码经过不同的编译器编译,可以被不同的设备所执行
Linux系统常用的编译C语言的编译器是:gcc

2.C语言程序编译步骤

在这里插入图片描述

二.hello world
(1)头文件的包含方式
#include <stdio.h> 默认是从 /usr/include/ 目录下搜索文件
#include “stdio.h” 先在当前目录下搜索文件,如果没有,再去 /usr/include 下找
#include “…/stdio.h”

(2)stdio.h
C语言的标准输入输出头文件

(3)main
1.有返回值,返回值是 int 类型,用来表示程序结束状态,如果是程序是正常结束返回 0,异常结束,返回其他值
2.C语言有且仅有一个main函数
3.程序main函数开始执行

(4){} 代码块

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

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

(7)注释
1.// 单行注释
2./**/ 多行注释

(8)编码规范
1.“{” 下面一行内容和这个“{” 要有4个空格的缩进
2.单词要有空格
3.不同的逻辑代码之间要有空行

(9)C语言语句是以分号结尾

三.内存

(1)程序
1.没有运行的程序 就是一堆代码,存在存储设备中,比如:硬盘、U盘、手机….
2.运行起来的程序 程序会被读到内存中执行,内存中存改程序的可执行代码、数据….

(2)存储单位
1.bit 位,比特,是一个二进制数字,只能表示 0 或者 1,使用的单位是 b
2.Byte 字节,使用的单位是 B 1B = 8b (内存的最小存储单位)
3.KB 1KB = 1024B
4.MB 1MB = 1024KB
5.GB 1GB = 1024MB
内存为每个字节分配了一个编号,类似于人的身份证===>这个编号叫做内存的地址。
内存为字节分配编号,要统一编号,这个编号的位数也是固定的
1.32位系统:编号的位数是32位,进制是二进制,0000…010101(32个) ----->4B
2.64位系统:编号位数是64位,进制是二进制,
0000…000101(64个) ------>8B

 32位系统  -----> 内存编号是4字节编号   ----->  最大能有多少个字节? 
	范围: 0000…00000(32个0)  ----->    1111….1111(32个1)
			     0            ----->        2^32  − 1  
	总共  2^32 字节   =4GB

四.数据存储
内存存的是二进制数,以一个字节为例:
(1)无符号数:只有正数,不带正负号

无符号数取值范围:
0000 0000---->  1111 1111
    0    ---->   255

(2)有符号数:带正负号的数
内存取最高位为符号位
最高位:0 1
类型 :正数 负数

存:
正数:在内存中存的是数据本身
负数:先转换为二进制,对每一位取反(符号位不变),然后加1
例如:
5:实际在内存中存的值是 0000 0101

-5:1000 0101---->1111 1010(取反)---->1111 1011(+1)
实际在内存中的值是:1111 1011
0在内存中表示:0000 0000

-0在内存中表示:人为规定为-128; 也就是说1000 0000这个值表示-128

有符号数取值范围:
1000 0000---->  0111 1111
 -128    ---->   127

例如

有符号数,在一个字节范围内:
127+1  
127在内存中的存储: 0111 1111
1  在内存中的存储: 0000 0001
和             : 1000 0000    =====>   -128

注意:1111 1111代表:-1

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值