IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> 标准C语言5 -> 正文阅读

[C++知识库]标准C语言5

十六、进制转换

? ? 为什么是二进制,八进制,十进制,十六进制:

? ? ? ? 因为现在的CPU只能识别高低电平,只能对二进制的数据进行计算

? ? ? ? 虽然二进制的数据可以直接被CPU识别计算,但是不方便书写,记录。

? ? ? ? 把二进制数据转换成八进制是为了方便记录到文档中

? ? ? ? 由于CPU的位数的不断发展,由8位发展到了现在的64位,因此,八进制就不能满足需求了

? ? ? ? 所以发展了十六进制,但是由于历史原因八进制还不能完全淘汰

? ? 十进制转化为二进制

? ? ? ? 求余法:

? ? ? ? ? ? 用2对数据求余,然后对商求余,直到商为0;

? ? ? ? ? ? 该过程中产生的余数就是该数据的二进制(逆序)。

? ? ? ? 求权法:

? ? ? ? ? ? 数据 - 2^(n-1)

? ? ? ? ? ? 137 ? ?

? ? ? ? ? ? 1 2 4 8 16 32 64 128

? ? ? ? ? ? 1 0 0 1 ?0 ?0 ?0 ?1 ? ? ?

? ?

? ? 二进制转十进制:(其他进制类似)

? ? ? ? 每位的2^(n-1)求和

? ?

? ? 二进制转八进制:

? ? ? ? 从低位开始,每三位二进制对应一位八进制

? ? 二进制转十六进制:

? ? ? ? ?从低位开始,每四位二进制对应一位八进制

? ?

? ? 程序中怎么表示?

? ? 0x ? ? ?十六进制 ? ?%x ? ? ?%#x(可以打印0x)

? ? 0 ? ? ? 八进制 ? ? ?%o ? ? ?%#x(可以打印0)

? ? ASCII码

? ? 65 ? ? ?'A'

? ? 97 ? ? ?'a'

? ? 48 ? ? ?'0'

十七、原码、反码、补码

? ? ? ? 原码:数据的二进制;

? ? ? ? 反码:

? ? ? ? ? ? 正数的反码就是原码

? ? ? ? ? ? 负数的反码,符号位不变,其他按位取反

? ? ? ? 补码:

? ? ? ? ? ? 正数补码就是原码

? ? ? ? ? ? 负数补码是反码+1

? ? 注意:内存中所有的数据存储都是以补码存储的

? ? 补码转数据:

? ? ? ? 1.无符号的

? ? ? ? ? ? 直接转十进制

? ? ? ? 2.有符号的

? ? ? ? ? ? 最高位是0:正数,直接转十进制

? ? ? ? ? ? 最高位是1:负数,1.补码-1

? ? ? ? ? ? ? ? ? ? ? ? ? ? 2.符号位不变,其他按位取反得到原码

? ? ? ? ? ? ? ? ? ? ? ? ? ? 3.原码转换为十进制数据

十八、函数

? ? 一段具有某项功能的代码,是C语言中管理代码的最小单位;

? ? 把代码封装成一个个函数,可以方便管理和调用代码

? ? 函数的分类

? ? ? ? 标准库函数:

? ? ? ? ? ? 由C语言标准委员会为C语言以函数的形式提供的一些基础函数

? ? ? ? ? ? 被封装在libc.so库中,使用是需要对应的头文件,

? ? ? ? ? ? 通过 ?函数名(实参)的方式即可调用标准库中的函数

? ? ? ? ? ? ?

? ? ? ? ? ? #include <time.h>

? ? ? ? ? ? time_t time( time_t *time );

? ? ? ? ? ? 功能:返回1970-1-1 0:0:0 到函数执行时的总共过了多少秒

? ? ? ? ? ? time_t sec = time(NULL);

? ? ? ? ? ?

? ? ? ? ? ? #include <stdlib.h>

? ? ? ? ? ? int system( const char *command );

? ? ? ? ? ? 功能:执行系统文件

? ? ? ? ? ? system("clear");

? ? ? ? ? ? #include <stdlib.h>

? ? ? ? ? ? int rand( void );

? ? ? ? ? ? 功能:返回一随机数

? ? ? ? ? ? int num = rand();

? ? ? ? ? ? #include <stdlib.h>

? ? ? ? ? ? void srand( unsigned seed );

? ? ? ? ? ? 功能: 设置rand()随机序列种子。对于给定的种子seed,

? ? ? ? ? ? rand()会反复产生特定的随机序列

? ? ? ? ? ? srand(time(NULL));

? ? ? ? 系统函数:

? ? ? ? ? ? 是操作系统以函数接口形式提供的一系列功能,

? ? ? ? ? ? 但是它不是真正意义上的函数

? ? ? ? ? ? 内存管理、文件管理、文件IO、信号处理、进程管理、进程通信

? ? ? ? ? ? 线程通信、线程管理、线程同步、网络通信

? ? ? ? 第三方函数:

? ? ? ? ? ? 由第三方提供的开源或者收费的代码库

? ? ? ? ? ? MD5 ? ? 加密算法

? ? ? ? ? ? Json ? ?序列化、反序列化

? ? ? ? ? ? Xml ? ? 配置文件解析


?

? ? ? ? 自定义函数:

? ? ? ? ? ? 为了更好的管理自己的代码,减少代码冗余,封装成函数

? ? ? ? ? ? 函数声明:(定义在调用之前可以省略)

? ? ? ? ? ? ? ? 函数声明的目的是为了告诉其他代码该函数的调用格式

? ? ? ? ? ? ? ? 返回值类型 函数名(类型1 形参名1,....);

? ? ? ? ? ? ? ? 注意:1.函数名一般全部小写,下划线分隔

? ? ? ? ? ? ? ? ? ? ? 2.如果不需要返回值(void)

? ? ? ? ? ? ? ? ? ? ? 3.如果不需要形参,(void)

? ? ? ? ? ? ? ? ? ? ? 4.就算形参类型相同,但每个都要加类型名

? ? ? ? ? ? ? ? 隐式声明:

? ? ? ? ? ? ? ? ? ? 在调用函数时,前面没有出现过该函数的声明,就会产生隐式声明的警告

? ? ? ? ? ? ? ? ? ? 参数会根据实参来猜测,返回值会猜测为int类型

? ? ? ? ? ? ? ? ? ? 最好不要产生隐式声明。

? ? ? ? ? ? ? ?

? ? ? ? ? ? 函数定义:

? ? ? ? ? ? ? ? 函数的实现代码

? ? ? ? ? ? ? ? 返回值类型 函数名(类型1 形参名1,....)

? ? ? ? ? ? ? ? {

? ? ? ? ? ? ? ? ? ? 实现代码;

? ? ? ? ? ? ? ? ? ? return 返回值;

? ? ? ? ? ? ? ? }

? ? ? ? ? ? 函数调用:

? ? ? ? ? ? ? ? 函数名(实参);

? ? ? ? ? ? 注意:

? ? ? ? ? ? ? ? 1.在函数调用之前有函数定义,则函数声明可以省略

? ? ? ? ? ? ? ? 2.函数的返回值在调用位置,可以立即显示,也可以用变量记录

? ? ? ? ? ? ? ? 3.建议不超过50行代码



?

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2022-07-20 18:34:21  更:2022-07-20 18:36:47 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/13 4:39:14-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码