C
LUOCHENLONG
这个作者很懒,什么都没留下…
展开
-
进制转换
二进制与十进制之间的转换 1 十进制转二进制 方法为:十进制数除2取余法,即十进制数除2,余数为权位上的数,得到的商值继续除2,依此步骤继续向下运算直到商为0为止。 (具体用法如下图) 2 二进制转十进制 方法为:把二进制数按权展开、相加即得十进制数。 (具体用法如下图) END 二进制与八进制之间的转换 1 二进制转八进制...转载 2019-03-20 08:38:09 · 150 阅读 · 0 评论 -
C/C++ share_ptr
要确保用 new 动态分配的内存空间在程序的各条执行路径都能被释放是一件麻烦的事情。C++11 模板库的 <memory> 头文件中定义的智能指针,即 shared _ptr 模板,就是用来部分解决这个问题的。只要将 new 运算符返回的指针 p 交给一个 shared_ptr 对象“托管”,就不必担心在哪里写delete p语句——实际上根本不需要编写这条语句,托管 p 的 sh...转载 2019-05-07 21:08:04 · 509 阅读 · 0 评论 -
C/C++ nullptr和NULL
nullptr和NULLnullptr是c++11中的关键字,表示空指针要区分nullptr和NULL,首先要明白NULL的含义:NULL是一个宏定义,在c和c++中的定义不同,c中NULL为(void*)0,而c++中NULL为整数0//C语言中NULL定义#define NULL (void*)0 //c语言中NULL为void类型的指针,...转载 2019-05-07 20:16:48 · 774 阅读 · 0 评论 -
C 内存
栈程序不会像处理堆那样在栈中显式地分配内存。当程序调用函数和声明局部变量时,系统将自动分配内存。 栈是一个后进先出的压入弹出式的数据结构。在程序运行时,需要每次向栈中压入一个对象,然后栈指针向下移动一个位置。当系统从栈中弹出一个对象时,最晚进栈的对象将被弹出,然后栈指针向上移动一个位置。如果栈指针位于栈顶,则表示栈是空的;如果栈指针指向最下面的数据项的后一个位置,则表示栈为满的。...原创 2019-05-06 09:54:58 · 141 阅读 · 0 评论 -
C IO操作
文件指针文件指针是一个指向文件有关信息的指针,这些信息包括文件名、状态和当前位置,它们保存在一个结构体变量中。在使用文件时需要在内存中为其分配空间,用来存放文件的基本信息。该结构体类型是由系统定义的,C语言规定该类型为FILE型typedef struct{short level;unsigned flags;char fd;unsigned char hold;short b...翻译 2019-05-05 22:11:37 · 1051 阅读 · 0 评论 -
C 共用体
#include <stdio.h>#include<stdlib.h>//结构体和共用体的区别//结构体变量的大小是其所包含的所有数据成员大小的总和,其中每个成员分别占有自己的内存单元,而共用体的大小为所包含数据成员分别占有自己的内存单元;而共用体的大小为所包含数据成员中最大内存长度的大小union DataUnion{ int iInt; c...原创 2019-05-05 14:30:15 · 214 阅读 · 0 评论 -
C链表操作
#include <stdio.h>#include <stdlib.h>//定义一个结构体struct Student{ char cName[20]; int iAge; struct Student*pNext;};//记录个数int iCount = 0;//创建链表struct Student*Create(){ ...原创 2019-05-05 13:57:45 · 184 阅读 · 0 评论