
C++
Hat_man_
这个作者很懒,什么都没留下…
展开
-
BYTE[ ]转CString
【代码】BYTE[ ]转CString。原创 2025-02-08 13:18:29 · 106 阅读 · 0 评论 -
C#调用C++的DLL时,如何调试进入到C++代码
鼠标右键点击项目,弹出菜单选择“属性”,进入到“调试”即可,选择“启用本地代码调试”。需要打开C#工程的“调试”开关即可。原创 2024-07-12 08:41:11 · 430 阅读 · 0 评论 -
C#与c++对应的类型列表
/c++:char 变量名 ---- c#:byte 变量名 //C++中一个字符用一个字节表示,C#中一个字符用两个字节表示。//c++:UINT8 * ---- c#:ref byte //C#中调用前需定义byte 变量名 = new byte();//c++:结构体 **变量名 ---- c#:out 变量名 //C#中提前申明一个结构体实例化后的变量名。//c++:int * ---- c#:ref int //C#中调用前需定义int 变量名 = 0;对应 c#:StringBuilder;原创 2024-07-11 13:34:58 · 790 阅读 · 0 评论 -
C++获取电脑信息
【代码】C++获取电脑信息。原创 2024-04-24 18:18:09 · 767 阅读 · 0 评论 -
纯C++方式创建线程
纯C++方式创建线程原创 2023-08-15 16:39:10 · 129 阅读 · 0 评论 -
OpenCV相机自动对焦代码整理
OpenCV 相机自动对焦原创 2023-03-08 16:25:25 · 1621 阅读 · 0 评论 -
VS编译时,报错“纯虚函数没有强制替代项“
纯虚函数没有强制替代项”原创 2023-01-03 16:34:37 · 2941 阅读 · 0 评论 -
thread调用类中函数的用法
thread原创 2022-11-18 16:46:33 · 293 阅读 · 0 评论 -
memcpy_s 使用个人分析
memcpy_s原创 2022-11-03 10:36:54 · 283 阅读 · 0 评论 -
为何VS2019带QT插件调试QT程序很慢
QT VS 调试慢原创 2022-09-30 11:10:06 · 1445 阅读 · 0 评论 -
UTF-8有标签和无标签区别分析
签名 UTF-8原创 2022-09-25 12:48:50 · 728 阅读 · 0 评论 -
C++判断字符串是否为UTF8格式(代码)
C++字符串为UTF8格式原创 2022-09-14 08:48:05 · 740 阅读 · 0 评论 -
C++如何禁止系统自动休眠
C++用windows的API禁止系统休眠原创 2022-08-15 17:12:44 · 973 阅读 · 0 评论 -
C++实现字节按照bit奇偶交换
字节按照bit奇偶交换原创 2022-07-23 10:35:29 · 267 阅读 · 0 评论 -
C++关于左移(<<)和右移(>>)的简单解释
C++左移,右移原创 2022-06-09 16:50:43 · 828 阅读 · 0 评论 -
VS2019某个函数按F12无法定位的解决方法
F12无效原创 2022-06-02 17:52:26 · 2366 阅读 · 0 评论 -
STL vector求最大和最小值
vector<int> Val;for(int i=0;i<5;i++){Val.push_back(i);}int nMax = *max_element(Val.begin(),Val.end());//求最大值int nMin= *min_element(Val.begin(),Val.end());//求最小值原创 2022-05-24 10:54:21 · 367 阅读 · 0 评论 -
RGB和十进制互转
//RGB转十进制int rgb2dec(int r, int g, int b){ int n = 0; n += (r << 16); n += (g << 8); n += b; return n;}//十进制转RGBvoid dec2rgb(int dec,int& r, int& g, int& b){ r = (dec >> 16) & 0xff; g...原创 2022-03-24 15:03:29 · 2895 阅读 · 0 评论 -
VS2019如何查看当前运行项目的所有线程运行情况
调试->窗口->并行堆栈原创 2022-03-16 17:25:19 · 6102 阅读 · 0 评论 -
VS2019调试时,如何查看指针地址内存中的值
1.当VS2019进入到调试状态后,在VS2019的菜单栏中找到 “调试”->“窗口”->“内存”2.然后将需要查看的内存地址复制粘贴到内存窗口的地址中,点击回车就可以。原创 2022-01-11 15:10:05 · 4015 阅读 · 2 评论 -
VS2019无法在“配置管理器”添加新的“配置”解决方法
如果在“配置管理器”中无法添加新的“配置”,如下图下拉之后,“新建”按钮无效果,则只能工程所在的目录找到后缀为 .vcxproj 的文件,我的文件是ZDemo.vcxproj。用记事本打开,如下1>是Debug的<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> <ConfigurationType>Applicat..原创 2021-12-29 18:13:42 · 1473 阅读 · 0 评论 -
VS在调试时,查看是DEBUG/RELEASE
项目属性页-> C/C++ -> 预处理器 -> 预处理器定义可以明显看到区分:Debug:_DEBUG;_LIB;SDK_EXPORTS;Release:NDEBUG;_LIB;SDK_EXPORTS注意看:_DEBUG 和 NDEBUG如果我们要自己写一个区别于上面两个调试模式,则可以自己在预处理器定义中定义自己的宏定义,如:_MY_DEBUG...原创 2021-12-23 00:02:09 · 1266 阅读 · 0 评论 -
string和char*互相转换
string strVal;char *message;1.string转char*strcpy_s(message, 1024, strVal.c_str());2.char*转stringstring strVal="";char *message="123";strVal=message;原创 2021-12-16 14:53:59 · 1036 阅读 · 0 评论 -
MFC将窗口的关闭键(叉叉)变为不可用/可用
只需要三步就可以搞定,如下:CMenu *pMenu = this->GetSystemMenu(FALSE);pMenu->EnableMenuItem(SC_CLOSE,MF_DISABLED); //关闭按钮变灰无效pMenu->EnableMenuItem(SC_CLOSE,MF_ENABLED); //关闭按钮恢复有效...原创 2021-11-10 09:00:27 · 1585 阅读 · 0 评论 -
利用fstream写入结构体(二进制写入)
typedef struct s_Student{ string name; int age; int tel;}Student;Student st;st.name="xiaoming";st.age=18;tel=1234567;fstream fs;fs("test.txt",ios::out | ios::binary);//binary二进制输出if(fs){fs.write(rein...原创 2021-11-04 17:29:25 · 997 阅读 · 0 评论 -
DWORD 和byte相互转换
1、 DWORD 转byte char 数组、指针byte byteData[1024]; // byte数组,示例DWORD dwData = dwReadBytes; // dword数据,示例byteData[0] = (dwData & 0xFF000000) >> 24; // 最高位字节byteData[1] = (dwData & 0x00FF0000) >> 16; // 第二高位字节byteData[2] = (dwData &a原创 2021-11-03 21:41:12 · 2934 阅读 · 0 评论 -
C++结构体初始化(有string的不可以用malloc)
struct Student{int age=0;string name="XiaoMing";}int main(){Student st1;st1.age=10;st1.name="XiaoHong";Student *st2=new Student;st2->age=13;str->name="xiaogang";int SumAge=st1.age+st2->age;delete st2;//new出来的结构体指针原创 2021-10-16 09:43:23 · 583 阅读 · 0 评论 -
vector.end()和vector.end()-1
vector<int> vec;for (int i = 1; i < 5; i++){ vec.push_back(i);}nTemp = *vec.end();//此处会报错nTemp=*(vec.end() - 1);//nTemp是4由上面的结论可以看出来,vec.end()-1 才是vec的最后一个元素,而vec.end() 是最后一个元素的后面一位。...原创 2021-09-25 18:02:59 · 1349 阅读 · 0 评论 -
09月20学习小记
1.memcpy_s 用于复制指定长度字符串到另一个字符串memcpy_s(out strDestination,in numberOfElements,in strSource,in count)StrDestination:拷贝完成之后的字符串numberOfElememts:目标缓冲区长度strSource :需要拷贝的字符串count: 需要拷贝的字符串长度2.reinterpret_cast 类型的强制转换用在任意指针(或引用)类型之间的转换;指针转换为...原创 2021-09-20 16:41:54 · 145 阅读 · 0 评论 -
UTF8和GBK互转
string GBKToUTF8(const char* strGBK){ int len = MultiByteToWideChar(CP_ACP, 0, strGBK, -1, NULL, 0); wchar_t* wstr = new wchar_t[len + 1]; memset(wstr, 0, len + 1); MultiByteToWideChar(CP_ACP, 0, strGBK, -1, wstr, len); len = WideCharToMultiByte(CP_.原创 2021-09-16 11:02:00 · 575 阅读 · 0 评论 -
RGB和KCMY相互转换代码
KCMY转RGBR = 255 * (100 - C) * (100 - K) / 10000;G = 255 * (100 - M) * (100 - K) / 10000;B = 255 * (100 - Y) * (100 - K) / 10000;RGB转KCMYint m_RGB=255;int nR = (m_RGB & 0x0000ff);//Rint nG = (m_RGB & 0x00ff00)>>8;//Gint nB = (m_R.原创 2021-09-15 19:53:24 · 602 阅读 · 0 评论 -
C++11中int,double与string的互相转化
std::to_stringstring to_string (int val);string to_string (long val);string to_string (long long val);string to_string (unsigned val);string to_string (unsigned long val);string to_string (unsigned long long val);string to_string (float val);st..原创 2021-09-14 16:49:11 · 291 阅读 · 0 评论 -
WaitForMultipleObjects用法理解
WaitForMultipleObjects是Windows中的一个功能非常强大的函数,几乎可以等待Windows中的所有的内核对象函数原型为:DWORD WaitForMultipleObjects( DWORD nCount, // number of handles in the handle array CONST HANDLE *lpHandles, // pointer to the object-handle array BOOL...原创 2021-08-25 09:40:40 · 344 阅读 · 0 评论 -
已知四个空间坐标,求四面体体积
double volume(double x1, double y1, double z1, double x2, double y2, double z2, double x3, double y3, double z3, double x4, double y4, double z4) { double A1, A2, A3, A4, value; A1 = x2 * (y3 * z4 - y4 * z3) - x3 * (y2 * z4.原创 2021-06-16 16:06:51 · 2451 阅读 · 4 评论 -
MFC控件随对话框放大自动适应(ListCtrl和Combox)
1.头文件申明变量和函数BOOL change_flag;CRect m_rect;void ChangeSize(UINT nID, int x, int y);2.源文件代码void CFormModelDlg::ChangeSize(UINT nID, int x, int y) //nID为控件ID,x,y分别为对话框的当前长和宽{ CWnd *pWnd; pWnd=GetDlgItem(nID); if(pWnd!=NULL) //判断是...原创 2020-11-19 19:45:14 · 1235 阅读 · 0 评论 -
MFC输入框输入完毕,点击回车,结束输入框焦点
BOOL CXXXDlg::PreTranslateMessage(MSG* pMsg){ // TODO: Add your specialized code here and/or call the base class if (pMsg->message==WM_KEYDOWN) { if(pMsg->wParam==VK_RETURN) { //获取回车后,焦点所在输入框的ID C...原创 2020-11-17 13:38:48 · 600 阅读 · 0 评论 -
CTime之间求差值
CTimeSpan( LONG lDays, int nHours, int nMins, int nSecs);//////求差值====================================Ctime T1=CTime::GetCurrentTime();CTime T2(2018,8,10,0,0,0);CTimeSpan timespan=T1-T2;int nSeconds=time.GetTotalSeconds();//获取时间差的总秒...原创 2020-05-25 21:24:47 · 1384 阅读 · 0 评论 -
memcpy()使用方法
C 库函数void *memcpy(void *str1, const void *str2, size_t n)从存储区str2复制n个字符到存储区str1。const char str1[50]="1234567890";char str2[50];memset(str2,0,50);memcpy(str2,str1,3);printf("str2=...原创 2020-02-25 19:48:09 · 1209 阅读 · 2 评论 -
CFileFind读取:文件夹/ 文件夹名称,以及读取:文件夹/下文件夹1/ 下的文件名称
1.读取文件夹下的文件夹的名称void FindDocsName(CString strDoc){ CFileFind filefind; boolean bf=filefind.FindFile(strDoc); while(bf) { bf=filefind.FindNextFile(); if(!filefind.IsDoc...原创 2020-01-20 11:13:10 · 622 阅读 · 0 评论 -
使用CStdioFile操作文件和filetxt.cpp报错和filecore.cpp报错
1.打开文件:file.Open(FileName, CFile::modeCreate|CFile::modeReadWrite|CFile::modeNoTruncate);打开文件主要需要传入两个参数,FileName——文件名;文件打开模式。几种比较常见的文件打开模式:CFile::modeCreate 以新建方式打开,如果文件不存在,新建;如果文件已存在,把该文件长度置零,即清除...原创 2020-01-13 19:10:00 · 2840 阅读 · 0 评论