自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 什么是可变参数列表?以及可变参数列表是如何实现的?

1、首先什么是可变参数列表?对于一般的函数而言,参数列表都是固定的,而且各个参数之间用逗号进行分开。这种函数在调用的时候,必须严格按照参数列表中参数的个数进行传参,否则编译器就会报错。int add(int a, int b) //该函数定义时,参数有两个,所以在调用时只能传入两个参数{ int c = a + b; return c;}int main(){ int sum1 = 0; int sum2 = 0; int sum3 = 0; s

2020-08-29 17:08:56 2280 3

转载 EAX、EBX、ECX、EDX、ESI、EDI、ESP、EBP 寄存器详解

一般寄存器:AX、BX、CX、DXAX:累积暂存器,BX:基底暂存器,CX:计数暂存器,DX:资料暂存器索引暂存器:SI、DISI:来源索引暂存器,DI:目的索引暂存器堆叠、基底暂存器:SP、BPSP:堆叠指标暂存器,BP:基底指标暂存器EAX、ECX、EDX、EBX:为ax,bx,cx,dx的延伸,各為32位元ESI、EDI、ESP、EBP:为si,di,sp,bp的延伸,32位元eax, ebx, ecx, edx, esi, edi, ebp, esp等都是X86 汇编语言中CPU上的

2020-08-29 16:53:34 6077

原创 函数的调用过程及其运行时堆栈解析

为了较为深入的了解一下函数的调用过程,所以我在学习的过程中用一段简单的代码对其进行了研究。代码和调用堆栈如下:下图为上述函数的反汇编及调用过程:

2020-08-23 17:41:57 268

原创 变量在栈中的存放(栈区中内存的使用)

#include<stdio.h>int main(){ int i = 3; int arr[10] = { 1,2,3,4,5,6,7,8,9,0 }; for (i = 0; i <= 12; i++) { printf("hehe\n"); arr[i] = 0; } return 0;}上述代码的运行结果是死循环。下图为刚创建数组arr和变量i的时候的内存,经过多次循环之后,i变为12,满足for循环条件,进入循环内部,执行语句,并将a.

2020-08-21 18:29:16 2184 1

原创 详解——如何C语言实现三子棋小游戏

目录一、划分步骤二、游戏的实现1、整体框架:2、游戏菜单3、打印棋盘4、玩家落棋(用 *表示)5、电脑落棋(用 @表示)6、任意一方落棋之后判断赢家三、代码1、头文件:2、功能实现:3、程序测试:三子棋这个小游戏虽然玩法简单,但是小时候的我们却常常乐在其中。前两天在学习的时候,发现了很多人做这个小游戏,所以自己也想做一个简单的三子棋游戏,来重温小时候的乐趣,哈哈哈一、划分步骤想要实现这个小游戏,就先得了解在程序中应该如何玩(分为哪些步骤):..

2020-08-21 12:17:20 463

原创 对C语言的关键字及部分关键字用法的简单理解

小盆友,你是否有很多问号???C语言的关键字是什么?有哪些?他们如何用???我也在学习中迷惑着,所以把今天学习到的稍微做一下总结,方便自己以后的复习(目前学到的比较粗浅,以后还需要深入学习)。哪里有不对的还希望各位大佬不吝赐教,谢谢!1、什么是C语言的关键字呢?举个例子,我们学习中文的时候要学习汉字,学习英语的时候需要学习单词,先学习这些基本词汇,才能造句,才能写文章。相同的,...

2020-05-07 21:23:25 695

原创 main函数的返回值类型为何是int型?

在 C/C++ 中,将main函数定义成 void main() 。然而这种做法是错误的!因为在 C/C++ 标准中,从来没有定义过 void main() 这样的代码形式。C++ 之父 Bjarne Stroustrup 在他的主页上的 FAQ 中明确地写着 "The definition void main( ) { /* ... */ } is not and never has been ...

2019-03-23 10:21:34 8025

原创 僵尸进程的查找及僵尸进程的kill

首先我们来看看什么是僵尸进程:之前的学习过程中时这样理解僵尸进程的:子进程先于父进程退出,并将退出原因保留在pcb中,因此退出后不会自动释放所有资源,子进程退出后操作系统会通知父进程子进程退出了,你去获取一下原因,再完全释放子进程资源。若父进程不管子进程的退出状态,则该子进程为了保存退出原因而将进入僵死状态,成为僵尸进程。而百度百科的解释为:在UNIX 系统中,一个进程结束了,但是他的父进...

2018-10-30 23:07:36 1779

原创 位段、枚举及联合的对比,以及大小端的存储方式

上一篇中主要将结构体的大小计算方式和内存对齐相关的知识整理了一下,但是C语言中还有结构体的几个“近亲”,他们就是位段、枚举以及联合。我们在学习他们的同时,不仅要清楚各自类型的特点,还要结合结构体在将他们放在一块进行比较对照,这样才能更好的将他们理解。那么我们就来看看这几个类型:位段一、位段的声明与结构体类似,但是还有几个不同点:1.位段的成员必须是 (全部) int 或者 (全部) c...

2018-10-23 21:49:45 273

原创 结构体大小的计算及内存对齐

结构体在C语言中还是非常重要的,结构体的内存对齐规律也应该是结构体这块内容中最重要的知识点了(但是要掌握也并不是很难哦)。因此要掌握结构体就必须将内存对齐这个规律牢记于心!我认为要学习这块的知识,首先要牢记内存对齐的这几条规律:                   1.第一个成员总是在(距结构体变量起始位置处)偏移量为0的地址处;                  2.其他成员的偏...

2018-10-22 23:44:17 472 1

原创 数组相关的运算

对于部分和我一样的初学者,由于对数组、指针、单目操作符sizeof()、strlen()函数等知识的不熟悉,使得对数组相关的运算掌握的不够好,所以经过一段时间的学习,并且根据自己的理解,将一些相关的练习进行总结。总结如下:在进行相关练习之前必须将这几个重要的知识点完全掌握:1、sizeof()是一个操作符(不是函数),返回的为对象/类型的字节数'\0'是字符串结束的标志,占一个字节。...

2018-10-21 16:05:40 260

原创 用两种方法 打印100~200之间的素数 ;输出乘法口诀

说起来有些不好意思,距离上篇博客的时间有些久了。这几天将我之前学习的知识点、练习过的代码在此回顾一下。(因为自己也是初学者,所以尽量将每行代码的作用注释清楚,也是对自己所学进行复习)一、打印100-200之间的素数先了解素数的定义方法一:#include&lt;stdio.h&gt; //用#include指令将标准输入输出函数调入供使用,h为头文件的意思(放在模块的开头);int m...

2018-04-30 17:54:15 487

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除