c++
A阿哲
这个作者很懒,什么都没留下…
展开
-
C++11的for循环使用auto的新用法
1、数组 int array[] = {1, 2, 3, 4, 5}; for(auto e : array) cout << e << endl; 等价于 for(int i = 0; i < 5; i++) cout << array[i]<<endl;2、字符串string str = "hello wor...原创 2019-12-09 16:23:22 · 2998 阅读 · 1 评论 -
C++ 学习大纲
转载 2019-10-29 10:14:08 · 521 阅读 · 0 评论 -
C、C++中字符串和字符指针之间的转换
1、CString 和 int 之间的互相转化 CString str = _T("123"); int i = _ttoi(str); int i = 123;CString str;str.Format(_T("%d"),i)2、 CString 和 char* CString str("123")原创 2017-11-08 09:25:22 · 11816 阅读 · 0 评论 -
二进制图片转换成BMP位图(C++)
void saveBitmap() { //一个586*586的二进制图片const int height = 586;const int width = 586;//新生产bmp图片数据块总大小 (bmpWidth *biBitCount/8+3)/4*4*bmpHeight;const int size = 588 *586 ;// Part.1 C原创 2017-11-03 10:41:19 · 3685 阅读 · 0 评论 -
C++ BMP图片转换为PNG图片
#include #include #include using namespace Gdiplus; BOOL GetEncoderClsid(WCHAR* pFormat,CLSID* pClsid){GdiplusStartupInput gdiplusStartupInput;ULONG_PTR gdiplusToken;原创 2017-11-03 10:57:39 · 6164 阅读 · 1 评论 -
C++读取BMP位图数据的方法
图片文件是有固定格式的,像BMP图片:文件头+位图的颜色数据。文件头一般在读取的时候是使用下面的代码: BITMAPFILEHEADER fileheader={0}; fread(&fileheader,sizeof(fileheader),1,fp); if(fileheader.bfType!=0x4D42) // 判断是否为BMP图片 {转载 2017-11-03 11:22:42 · 1965 阅读 · 0 评论 -
无法解析的外部符号 _GdiplusStartup@12
error LNK2019: 无法解析的外部符号 _GdiplusStartup@12,该符号在函数 “public: __thiscall APPInit::APPInit(void)” (??0APPInit@@QAE@XZ) 中被引用error LNK2019: 无法解析的外部符号 _GdiplusShutdown@4,该符号在函数 “public: __thiscall APPIn原创 2017-11-03 11:44:35 · 1868 阅读 · 0 评论 -
MFC下获取时间戳
MFC下获取时间戳 SYSTEMTIME tmSys; GetLocalTime(&tmSys); CTime tm3(tmSys); __int64 tmDst = __int64(tm3.GetTime())*1000 + tmSys.wMilliseconds; CString sMS; _i64toa(tmDst,sMS.GetBuffer(10原创 2017-11-28 10:38:43 · 7471 阅读 · 0 评论 -
C++ 获取文件夹下的所有文件名称
获取文件夹下所有的文件名是常用的功能,今天再一次有这样的需求,特此做个记录原文:https://www.cnblogs.com/fnlingnzb-learner/p/6424563.html原文:http://blog.csdn.NET/cxf7394373/article/details/7195661原文:http://qiaoxinwang.blog.163.com/blog/sta...转载 2019-05-22 10:57:23 · 1712 阅读 · 0 评论 -
MFC总结之CListCtrl用法及技巧
文根据本人在项目中的应用,来谈谈CListCtrl的部分用法及技巧。当初学习时,查了很多资料,零零碎碎的作了些记录,现在主要是来做个总结,方便以后查阅。主要包括以下十三点内容:基本操作、获取选中行的行号、复选框操作、动态设置选中行的字体颜色、设置选中行的背景颜色、禁止拖动表头、让第一列居中显示、设置行高与字体、虚拟列表技术、点击表头时进行归类、向上与向下移动、动态调整大小问题、避免闪烁问题。...转载 2019-05-28 14:04:48 · 1240 阅读 · 0 评论 -
C字符串处理函数小全
1)字符串操作 strcpy(p, p1) 复制字符串 strncpy(p, p1, n) 复制指定长度字符串 strcat(p, p1) 附加字符串 strncat(p, p1, n) 附加指定长度字符串 strlen(p) 取字符串长度 strcmp(p, p1) 比较字符串 strcasecmp忽略大小写比较字符串 strncmp(p, p1, n) 比较指定长度转载 2017-11-24 11:51:36 · 679 阅读 · 0 评论 -
C++ 文件夹下文件监控
HANDLE m_hEvent;HANDLE m_arhChange[2];BOOL m_bExit;void CMonitorDir() { for(int i = 0; i < 2; i++) { m_arhChange[i] = m_hEvent; } m_bExit = FALSE; m_arhChange[0]...原创 2017-08-11 17:20:11 · 4492 阅读 · 0 评论 -
C++文件读写详解
ofstream,ifstream,fstream 在看C++编程思想中,每个练习基本都是使用ofstream,ifst...转载 2019-07-24 11:05:22 · 448 阅读 · 0 评论 -
断言(ASSERT)的用法
我一直以为assert仅仅是个报错函数,事实上,它居然是个宏,并且作用并非“报错”。 在经过对其进行一定了解之后,对其作用及用法有了一定的了解,assert()的用法像是一种“契约式编程”,在我的理解中,其表达的意思就是,程序在我的假设条件下,能够正常良好的运作,其实就相当于一个if语句:if(假设成立){ 程序正常运行;}else{ 报错&...转载 2017-08-29 15:12:38 · 2559 阅读 · 0 评论 -
MFC读写XML文件
使用MSXML.DLL读写XML; 文件顶部加入 #import "msxml3.dll"; using namespace MSXML2; //这两句作用是,在程序的文件夹下生成MSXML3.TLH和MSXML3.TLI两个文件; ------------------------------------------------转载 2017-09-05 17:26:29 · 5678 阅读 · 2 评论 -
C、C++基础知识之二 sizeof和strlen之间的区别
1、sizeof 操作符的结果类型是size_t,它在头文件中的typedef 为unsigned int 类型。该类型保证能容纳实现所建立的最大对象的字节大小。 2、sizeof是运算符,strlen是函数。 3、sizeof可以用类型做参数,strlen只能用char *做参数,且必须是以“\0”结尾的。sizeof还可以用函数做参数。 4、数组做sizeof的参数不退化,传原创 2017-05-02 22:04:10 · 184 阅读 · 0 评论 -
C、C++基础知识之三 内存分配
三种分配方式: 1、从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。 2、在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。 3、从堆上分配,亦称动态内存分配,程序在运行的时候用malloc原创 2017-05-02 22:39:19 · 215 阅读 · 0 评论 -
VS2015连接mysql遇到的几个问题
问题一:场景:吧 mysql的include和lib都已经加入vs的附加目录,libmysql.lib也已经加入依赖库:1> Win32Project1.cpp1>c:\program files\mysql\mysql server 5.5\include\mysql_com.h(291): error C3646: “fd”: 未知重写说明符1>c:\program file原创 2017-05-23 14:08:08 · 1164 阅读 · 0 评论 -
C、C++基础知识之 面向对象的三个基本特征
1、封装:将客观的事物抽象成类,每个类对自身的数据和方法进行控制。 2、继承:广义的继承分三种:实现继承(使用基类的属性和方法)、可视继承(子窗体使用文字窗体的外观和实现代码)、接口继承(接口继承以及纯虚函数) 3、多态:允许将子类类型的指针复制给父类类型的指针。原创 2017-05-03 22:52:57 · 362 阅读 · 0 评论 -
博文内容之解释
本人所写原创之博文只为记录笔记,以供自己以及需要的他人学习回顾知识。博文内容: 1、 自己工作学习中的问题总结。 2、他人微博、书本、 视频等可供学习的知识点的记录。原创 2017-05-03 23:00:55 · 491 阅读 · 0 评论 -
C、C++基础知识之 定义指针
1)、一个整形数(An integer)2)、一个指向整形数的指针(A point to An integer)3)、一个指向指针的指针,它指向的指针是指向一个整形数(A point to a point to An integer)4)、一个有10个整形数的数组(An array of 10 integers)5)、一个有10个指针的数组,该指针是指向一个整形的数6)、一个原创 2017-05-06 23:50:08 · 189 阅读 · 0 评论 -
C++、VC++和MFC的区别与联系
C++:纯粹的编译语言; VC++:编程环境,即IDE; MFC:是随微软 VC++开发工具二发布的类库。 MFC,微软基础类(Microsoft Foundation Classes),实际上是微软提供的用于在C++环境下编写应用程序的一个框架和引擎; VC++ 是windows 下开发人员使用的专业C++SDK,专业软件开发平台,MFC 就是挂在它之上的一个辅原创 2017-04-25 23:27:56 · 1064 阅读 · 0 评论 -
C、C++基础知识之 引用与指针区别
引用是变量的别名,指针是指向变量的内存地址。1、引用必须被初始化,指针不必。2、引用被初始化后不能被改变,指针可以改变所指的对象。3、不存在指向空值的引用,但是存在指向空值的指针。 函数返回值时,要生成一个值副本,而用引用返回值时,不生成值副本,所以提高了效率。 函数返回一个或者多个值的时候,方法之一是,使用引用给函数传递参数,然后又函数往目标中原创 2017-05-09 22:53:43 · 313 阅读 · 0 评论 -
vs2010下MFC按钮打开文件夹并遍历下面所有文件
vector files;CString strFilePath;遍历路径下的所有文件:void GetFileFromDir(CString csDirPath) { csDirPath+="\\*.dcm"; HANDLE file; WIN32_FIND_DATA fileData; char line[1024]; cha原创 2017-06-01 00:15:05 · 3034 阅读 · 0 评论 -
C、C++基础知识之 六 CString::ReverseFind()和CString::Find()区别
CString::ReverseFindint ReverseFind( TCHAR ch ) const;返回值:参数: ch要搜索的字符。说明:此成员函数在此CString对象中搜索与一个子串匹配的最后一个字符。此函数类似于运行时函数strrchr。“最后一个字符”是指从左往右的最后一原创 2017-06-08 10:57:02 · 7933 阅读 · 0 评论 -
vs2010下 转换到 COFF 期间失败: 文件无效或损坏
因为同一个电脑上安装多个VS,有多个cvtres.exe。按照下面的操作如果还是不行就在C盘搜索cvtres.exe,然后挨个重命名,看看是调用的哪个,然后修改就可以了。用VS2010编译C++项目时出现这样的错误:LNK1123: 转换到 COFF 期间失败: 文件无效或损坏 解决方法:1、搜索C盘下的cvtres.exe,结果得到类似这样的列转载 2017-06-09 17:10:55 · 573 阅读 · 0 评论 -
C++针对ini配置文件读写大全
ini文件(Initialization file),这种类型的文件中通常存放的是一个程序的初始化信息。ini文件由若干个节(Section)组成,每个Section由若干键(Key)组成,每个Key可以赋相应的值。读写ini文件实际上就是读写某个的Section中相应的Key的值,而这只要借助几个函数即可完成。1. 把信息写入系统的win.ini文件[cpp] view转载 2017-07-13 10:56:11 · 14360 阅读 · 0 评论 -
SetCurrentDirectory(),GetCurrentDirectory(),GetModuleFileName(),以及getcwd()的区别
BOOL SetCurrentDirectory( LPCTSTR lpPathName // 程序的目录设置到地址);DWORD GetCurrentDirectory( DWORD nBufferLength, // 缓冲区大小 LPTSTR lpBuffer // 存放地址的缓冲区);DWORD GetModu原创 2017-07-13 14:51:52 · 663 阅读 · 0 评论 -
C、C++基础知识之一 关键字const的含义和用途
含义: 1、合理地使用关键字const可以使用编译器很自然的保护那些不希望被改变的参数,防止其意外的修改,减少bug的出现。 2、通过给优化器一些附加信息,使用关键字const能让代码更紧凑。用途: 1、可以定义const常量。 2、Const可以修饰函数参数、返回值、甚至函数的定义体。被const修饰的东西都受到强制保护,预防意外变动,提高程序的健壮性。原创 2017-04-27 00:53:45 · 193 阅读 · 0 评论