c++
文章平均质量分 62
_土豆_
这个作者很懒,什么都没留下…
展开
-
new 、delete和malloc、free的解析及区别
在c语言中使用函数malloc和free来进行内存管理(分配与释放),在c++中则提供了运算符new和delete来做同样的工作,后者比前者性能更优越,使用更方便更灵活。1.new用于内存分配的基本形式为: 指针变量名=new 类型在程序运行过程中new是从堆的一块自由存储区中为程序分配一块与类型字节数相适应的内存空间,并将该块内存的首地址存于指针变量中。eg. int *p; //声明一原创 2016-05-26 09:37:50 · 436 阅读 · 0 评论 -
为何要用Unicode?
Unicode 是为了解决传统的字符编码方案的局限而产生的,例如ISO 8859所定义的字符虽然在不同的国家中广泛地使用,可是在不同国家间却经常出现不兼容的情况。很多传统的编码方式都有一个共同的问题,即容许电脑处理双语环境(通常使用拉丁字母以及其本地语言),但却无法同时支持多语言环境(指可同时处理多种语言混合的情况)。 开发人员在开发应用程序时候通常使用Unicode字符和字符串。能够原创 2017-07-14 11:20:14 · 3636 阅读 · 0 评论 -
Windows下线程的创建、退出和资源释放
可以通过以下几种方法创建一个线程:1、CreateThread2、_beginthread3、_beginthreadex4、AfxBeginThread--------------------------------------------------------------------------------------1、CreateThread函数原型转载 2017-07-18 11:25:16 · 664 阅读 · 0 评论 -
MFC 移动控件
将ID名为IDC_CHECK_AUTOLOGIN的控件向上移动 60 CRect rectControl;LONG lnRemove = 60;GetDlgItem(IDC_CHECK_AUTOLOGIN)->GetWindowRect(&rectControl);ScreenToClient(rectControl);GetDlgItem(IDC_CHECK_A原创 2017-08-30 18:25:47 · 736 阅读 · 0 评论 -
字符串转16进制和16进制转字符串
//字符串转16进制BOOL str2Hs(const char * str, LPSTR lpHs) { int i=0; while (1) { if (0 == str[i]) break; sprintf(lpHs+i*2, "%02X", (unsigned char)str[i]); i++; } return原创 2017-09-12 11:12:12 · 1450 阅读 · 0 评论 -
根据驱动路径获取无线网卡的mac
//// test.cpp : Defines the entry point for the console application.#pragma once#include <winsock2.h>#include "winnt.h"#include "windef.h"#include <string>#include <atlstr.h>...原创 2017-10-20 14:23:31 · 1058 阅读 · 0 评论 -
MFC 初始化时对话框的隐藏(处理showwindow时窗口闪的情况)
在初始化时 当使用 ShowWindow(SW_HIDE) 隐藏对话框时 出现闪的情况 如下解决:在如下位置添加 ON_WM_WINDOWPOSCHANGING() BEGIN_MESSAGE_MAP() ON_WM_WINDOWPOSCHANGING() END_MESSAGE_MAP()代码中添加声明 afx_msg void OnWindowPosChanging(WINDOWPOS*...原创 2018-05-28 09:41:51 · 3288 阅读 · 0 评论 -
Base64加解密C++
BASE64.CPP#include "BASE64.h" static const CHAR* DATA_BIN2ASCII = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; INT BASE64_Encode( const BYTE* inputBuffer, INT inpu...原创 2018-09-28 09:49:46 · 1021 阅读 · 0 评论 -
C++中的TYPE、DWORD与WORD
在Visual C++ 6.0中,BYTE与WORD,DWORD本质上都是一种无符号整型,它们在WINDEF.H中被定义,定义如下:typedef unsigned char BYTE;typedef unsigned short WORD;typedef unsigned long DWORD;也就是说BYTE是无符号的char型(cha转载 2017-07-11 14:31:01 · 1527 阅读 · 0 评论 -
求数组(元素可为正数、负数、0)的最大子序列和
求数组(元素可为正数、负数、0)的最大子序列和: 代码实现:int max(int a, int b){ if (a > b) return a; else return b;}int FindMaxArr(int arr[],int len){ assert(arr); int result = arr[0]; int cur = arr[0]; f原创 2016-08-16 14:29:00 · 1076 阅读 · 0 评论 -
c++中的模板
一、概念: 所谓模板,通俗的理解就是像模具一样,通过它就能做出东西,一般是样式啥都是固定的,就像所谓的作文模板那样,能用的上就直接拿过来添加点自己的东西。那就是自己的。(我是这样理解的) 但在编程中,模板是泛型编程的基础。所谓泛型编程就是编写与类型无关的逻辑代码,是一种复用的方式,模板分为模板函数和模板类。二、模板函数 举个例子:(假设要实现一个比较两个数是否相等的重载函数) bool i原创 2016-05-26 09:37:53 · 216 阅读 · 0 评论 -
虚函数
虚函数是重载的另一种表现形式。这是一种动态的重载方式,它提供了一种更为灵活的、运行时的多态性机制。虚函数允许函数调用与函数体之间的联系在运行时才建立,也就是在运行时才决定如何动作,即所谓的动态连编。 虚函数首先是基类中的成员函数,但这个成员函数前面加了关键字virtual,并在派生类中被重载。 它的一般形式: virtual 返回类型 函数名(形参表){ 函数体} 在原创 2016-05-26 09:37:56 · 1041 阅读 · 0 评论 -
斐波那契序列的递归和非递归的实现
斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci[1])以兔子繁殖为例子而引入,故又称为“兔子数列”。 指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递归的方法定义: F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)原创 2016-05-26 09:37:58 · 683 阅读 · 0 评论 -
Centos下vim、ctags的配置及基本用法
一、vi/vim 基本使用方法 vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的配置和一小部分指令。由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的,因此您可以在其他任何介绍vi的地方进一步了解它。Vi也是Linux中最基本的文本编辑器,学会它后,您将在Linux的世界里畅行无阻。原创 2016-06-01 13:36:11 · 9880 阅读 · 1 评论 -
面试题1-将二叉搜索树转变成排序的双向链表
输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。要求不能创建任何新的结点,只调整指针的指向。 对于一棵二叉搜索树 若采用中序遍历,其遍历顺序为1-2-3-4-5-6-7,通过适当的指针变换操作,可变成的双向有序链表如下:对于将其转换为双链表有两种思路: 首先看第一种思路:原创 2016-06-24 20:50:06 · 3806 阅读 · 0 评论 -
liunx中make、makefile使用及进度条的实现
在linux中要了解make和makefile,首先先要了解以下过程 在此,我想多说关于程序编译的一些规范和方法,一般来说,无论是C、C++、还是pas,首先要把源文件编译成中间代码文件,在Windows下也就是 .obj 文件,UNIX下是 .o 文件,即 Object File,这个动作叫做编译(compile)。然后再把大量的ObjectFile原创 2016-06-02 11:42:56 · 2892 阅读 · 0 评论 -
Const 在C C++里有什么不同
在C中const的用法总结起来有两种: 1、在定义变量时使用(const常量在定义后不能被修改,故在定义时一定要进行初始化操作) A:变量是个常变量: int const a=10; const int a=10; B:指针为指向常数的指针,(指针本身的值可以改变) const i原创 2016-07-21 11:23:04 · 834 阅读 · 0 评论 -
单链表相关热点面试题(一)
对于单链表相关的问题,往往是面试的热点,在此我总结了一些单链表相关热点面试题 1、比较顺序表和链表的优缺点,说说它们分别在什么场景下使用? 一、顺序表的特点是逻辑上相邻的数据元素,物理存储位置也相邻,并且,顺序表的存储空间需要预分配。 它的优点是: (1)方法简单,各种高级语言中都有数组,容易实现。原创 2016-07-21 11:26:04 · 408 阅读 · 0 评论 -
MFC 使用ToolTip提示信息
最近遇到界面显示信息被截断、显示不全的问题,所以使用tooltip来提示信息使用MFC中封装好的CToolTipCtrl类1、定义变量 CToolTipCtrl m_tooltip2、在窗体的OnInitDialog()中创建m_Tooltip。//创建m_tooltipm_ToolTip.Create(this);//, TTS_BALLOON);//将CToolTip...原创 2019-04-23 11:40:44 · 2408 阅读 · 0 评论