自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 资源 (4)
  • 收藏
  • 关注

原创 预处理、编译和汇编这些步骤程序发生的变化

现在大多数的程序都是在IDE上进行开发的,预处理、编译、汇编和链接这些过程都有编译器已经设定完成,而实际程序在这个过程发生了什么,我们就无从得知了。但是作为程序员,我们有必要去了解在这个过程中我们的程序都发生了哪些变化。 下面就详细描述每一个步骤发生了什么。 参考《程序员的自我修养》 预处理 1.将所有的#define删除,宏定义进行替换。 2.处理所有条件预编译指令,比如#ifndef...

2018-03-31 22:00:31 416

原创 虚拟地址空间的内存布局

实际的物理内存程序员是不能直接管理的,在最早期的x86体系结构中。由于实模式,对内存不进行保护,致使病毒蠕虫横飞。出现保护模式以后,提供虚拟地址空间对实际物理内存抽象虚拟,形成一一映射的关系。...

2018-03-31 16:31:30 306

原创 memcpy函数的实现及内存重叠问题的分析

函数原型 void *memcpy(char *dest,const char *src,size_t n)头文件 #include<string.h>或#include<memory.h> 参数 1.memcpy中的三个参数分别为目标字符串 char *dest。2.源字符串 const char *src const 这里const是对sr...

2018-03-29 21:00:19 6702 4

原创 strlen()函数和sizeof()运算符的区别

strlen函数原型 size_t strlen(const char *string)size_t 是无符号整数的别名,在vs2008编译器中可以查看其宏定义typedef unsigned int size_t;这样定义的原因一方面是字符串的长度不可能是负数,另一方面是不可能为实数。 功能 其功能是获取字符串的长度。 返回值 在MSDN文档中查看strlen函数的返回...

2018-03-29 19:41:08 2210

转载 C语言不做数组下标安全性检查

C语言的编译器是不检查下标越界的,以前知道这个问题,可是没有想过是什么原因?总结如下:   1,不检查下标是否越界可以有效提高程序运行的效率,因为如果你检查,那么编译器必须在生成的目标代码中加入额外的代码用于程序运行时检测下标是否越界,这就会导致程序的运行速度下降,所以为了程序的运行效率,C/C++才不检查下标是否越界。   2,不检查下标是为了给程序员更大的空间,也为指针操作带来更多的方...

2018-03-29 19:04:33 2351

原创 数组作为形参退化为指针

一个小程序进行验证#include<stdio.h>void Sizeof(int arr[]){ printf("%d\n",sizeof(arr));}int main(void){ int arr[] = {1,2,3,4,5}; printf("传入Sizeof()函数进行计算:\n"); Sizeof(arr); ...

2018-03-29 18:26:43 579

原创 举例分析可变参数函数实现的过程

求总和函数(可变参数形式)int average(int n,...){ int sum; va_list args; va_start(args,n); for(int i = 0;i<n;++i) { sum += va_arg(args,int); } va_end(args); return sum...

2018-03-12 21:54:14 327

原创 printf函数的返回值!

printf函数原型 int printf(const char * p,...);返回值 返回值为整型,是输出字符的个数,即格式化字符串中字符的个数。举例int main(){ int count = printf("ni hao csdn,%d\n",111); //这里的格式化字符串包括逗号、空格、换行符、字母及数字共计16个字符 ...

2018-03-12 15:41:00 5822

转载 sscanf函数的用法

函数原型int sscanf( const char , const char , …); int sscanf(const char *buffer,const char *format,[argument ]…); buffer存储的数据 format格式控制字符串 argument选择性设定字符串 sscanf会从buffer里读进数据,依照format的格式将数据写入到argume

2018-03-11 21:32:58 493

原创 C语言 实现浮点数的整型强制转化

1.整型在内存中的存储形式 int 与 float 均是四个字节大小,即32位,但是他们在内存中的存储形式却是完全不相同的。下面举一个例子,在vs下通过查看内存验证一下以上的事实。 1.1 int a = 12; 由于是正数,所以符号位取0。 (12) = 1010B 所以其在内存中存储形式为 0101 0000 0000 000...

2018-03-11 20:09:36 31460 7

八大排序C++代码实现

冒泡排序 选择排序 插入排序 基数排序 希尔排序 归并排序 堆排序 快速排序的C++的代码实现,可以作为模板使用,是互联网企业面试的必备技能

2020-11-14

常用的数据结构树算法代码总结

本文档总结了常用的数据结构中的树算法代码.包含常见的遍历算法(递归与非递归等),dfs,bfs的实现以及其广泛的应用

2020-01-01

LinkedListProblems.pdf

斯坦福大学整理的18个链表的相关问题,包括各类型的链表的问题。对于面试算法有很大的帮助,唯一的不足是pdf文档为全英文,需要一定的英语阅读能力。

2019-10-29

空空如也

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

TA关注的人

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