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语言的一点点收获,普通人不知道的秘密(哈哈哈哈) -> 正文阅读

[C++知识库]学习c语言的一点点收获,普通人不知道的秘密(哈哈哈哈)

有错误欢迎大家提醒我

文章目录


前言

马上要毕业了,回过头来发现自己虚度了三年的光阴。以此篇文章献给大学刚开始学c语言的小伙伴。


一、c语言你不知道的秘密,文章稍长,看完绝对有收获。

#define??宏定义,在c语言中书写的格式

#define  zhengxing int

意思是会在编译阶段把所有遇到的“zhengxing”这个字符串都当作int来看待

?#include?是一个预处理命令,用来引入头文件。 当编译器遇到?printf()?函数时,如果没有找到?stdio.h?头文件,会发生编译错误。所以使用函数的时候要引入对应的头文件。想知道c语言有哪些官方规定好的头文件可以去百度,每个头文件里的函数有哪些,也可以自行百度。我就不过多的阐述了。

定义常量

在 C 中,定义常量的方式:使用?#define?预处理器与使用?const?关键字。

使用conts时只需要在变量类型前面加上就行 conts int a=0;

许多的人写C?程序,写main里面的东西都不知道是干什么的。

main(int argc, char *argv[])?

传入参数,与其他函数的"()"里面放的东西相同。argc?为参数个数,argv?是字符串数组, 下标从?0?开始,第一个存放的是可执行程序的文件名字,然后依次存放传入的参数,

main()或者main(void)也是可以的。这两个等价,作用是说main函数不传入任何参数。

在定义变量名或者函数名的时候必须以字母或下划线开头。

引入头文件时<>可以理解成系统自带的库,也可以写成" " 表示用户自定义的库。.h表示头文件.程序在编译时,需要找到那个头文件,使用<>这种方式编译器查找的时候,会在编译器的安装目录的标准库中开始查找,""这种方式,会在当前的工程所在的文件夹开始寻找,也就是你的源程序所在的文件夹。

c语言现在的标准是C11,上一个标准是C99.版本.具体的变动可以自行百度.

char1 字节-128 到 127 或 0 到 255
unsigned char1 字节0 到 255
signed char1 字节-128 到 127
int2 或 4 字节-32,768 到 32,767 或 -2,147,483,648 到 2,147,483,647
unsigned int2 或 4 字节0 到 65,535 或 0 到 4,294,967,295
short2 字节-32,768 到 32,767
unsigned short2 字节0 到 65,535
long4 字节-2,147,483,648 到 2,147,483,647
unsigned long4 字节0 到 4,294,967,295

这个表上的东西是最基本的,一定要知道,不能做到全部了解也要明白char 与int.

1位二进制? ? 1位=1bit

8位二进制? 8位=1byte(字节)

字节是数据大小的最小衡量单位。

一个汉字,占两个字节.也就是16位,有的地方也把位叫做字长.

各种类型的存储大小与系统位数有关,但目前通用的以64位系统为主。

char类型一个字节有8位,8位的最大数值是255,0-255可以表示256个字符。256个字符就是ascii码。ascii码的256个就在这里对应上了。

float类型,占四个字节三十二位,0-22位表示小数,23-30位表示指数(10的几次方),31位表示指数的正负。具体的当时我记得实在计算机组成原理上面,如果想要深入学习的可以自行百度。

doubule类型,占8个字节,64位。0-52位表示具体的数,52到62表示指数,63表示指数的符号位。

得到某个类型或某个变量在特定平台上的准确大小,您可以使用?sizeof?运算符。表达式?sizeof(type)?

printf("int 存储大小 : %lu \n", sizeof(int));

说点不常用但是需要知道的关键字

关键字说明
case开关语句分支
const定义常量,如果一个变量被 const 修饰,那么它的值就不能再被改变。只能读,不能更改
enum声明枚举类型
extern声明变量或函数是在其它文件或本文件的其他位置定义
goto无条件跳转语句
register声明寄存器变量
signed声明有符号类型变量或函数
sizeof计算数据类型或变量长度(即所占字节数)
struct声明结构体类型
typedef用以给数据类型取别名
unsigned声明无符号类型变量或函数
union声明共用体类型
void除常用的功能外,还可以声明无类型指针
volatile说明变量在程序执行中可被隐含地改变
while循环语句的循环条件

指针指向 void
类型为 void * 的指针代表对象的地址,而不是类型。例如,内存分配函数?void *malloc( size_t size );?返回指向 void 的指针,可以转换为任何数据类型。

常见的转义字符

转义序列含义
\\\ 字符
\'' 字符
\"" 字符
\?? 字符
\n换行符
\r回车

然后还需要知道常见的定义类型,auto(默认的),static(静态的),extern(全局),register(寄存器)。

extern定义一个extern类型的变量,这个变量在这个项目里哪里都可以用。哪里都可以。

register比较特殊register?存储类用于定义存储在寄存器中而不是 RAM 中的局部变量。

RAm就是内存,在内存卡与cpu之间。

位运算符?

&(和),|(或),^(异或),~(取反),>>(右移),<<(左移)。

&与|与逻辑运算方式相同。

"^"? ? 异或就是两个数的二进制位对齐,相同取0,不同取1

"~"? 取反就是每一位二进制由原来的0变成1,1变成0

">>" 右移就是将一个数的各二进制位全部右移若干位,正数左补0,负数左补1,右边丢弃。

"<<"左移,左边多余的丢掉,右边补0。

int a=1;
a=a<<1;

现在a就完成了左移,现在变量a的值位2

其他符号

sizeof()是运算符,不是函数,

&返回变量的地址。
int a=10;
printf("%d",&a);
结果是a这个变量在内存里的具体的位置
*指向一个变量。*a; 将指向一个变量。


总结


例如:以上就是今天要讲的

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2022-10-17 12:13:43  更:2022-10-17 12:15:42 
 
开发: 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/19 8:47:54-

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