标签 C++ 下的文章

  • 📂C++中访问MySql数据库的帮助类教程

    1、头文件#pragma once // 网络通信头文件 #include <WinSock.h> // 引入mysql头文件(比较好的做法是把文件夹拷到工程目录,也可以在vc目录里面设置) #include <mysql.h> #include <Windows.h> // 包含附加依赖项,也可以在工程--属性里面设置 //#pragma ...

  • 📂windows C++ 网络编程教程

    转载:https://blog.csdn.net/yao\_hou/article/details/91400832 https://blog.csdn.net/Ctrl\_qun/article/list/2?一、什么是Socket socket即套接字,用于描述地址和端口,是一个通信链的句柄。应用程序通过socket向网络发出请求或者回应。sockets(套接字)编程有三种,流式套接...

  • 📂动态内存的分配(new delete malloc free)教程

    new和malloc的区别是什么? -new关键字是C++的一部分,在所有的C++编译器中都被支持 -malloc是由C库提供的函数,在某些系统开发中是不能调用的 -new以具体类型为单位进行内存分配 -malloc以字节为单文进行内存分配 -new在申请内存空间时可以进行初始化,它会触发构造函数的调用 -malloc仅根据需要申请定量的内存空间 -对象的创建只能使用new ...

  • 📂【原创】在Windows平台使用msys2、mingw64和vscode编写和调试C/C++代码教程

    相关名词就不解释了,这里主要讲讲在vscode里怎么配,这里假设大家相关工具已经装好。1、在.vscode目录下,新建以下几个配置文件,当然也可以通过vscode命令自动生成,如果你已有这些文件直接修改即可。c\_cpp\_properties.json(代码提示):{ "configurations": [ { "name":...

  • 📂Shell排序 C&&C++教程

    Shell排序 Shell排序是大量数据需要排序时,更为高效的插入排序。它的算法思想基于插入排序的算法思想 流程: (1)将n个元素数组分成n/2个数字序列,第一个数据和第n/2个数据为一对,等等,以此类推 (2)一次循环使每一个数对排列好顺序 (3)变成n/4个数对,再次排序。 (4)不断重复上述过程,随着序列减少直至最后变为1个,完成排序。 具体如何怎么排的可以运行代码查看每一步排序。 ...

  • 📂Linux C\C++基础——数组形参的使用教程

    1.数组形参void fun(int a[100]) void fun(int a[]) void fun(int *a)void fun(char*p[100],int n) void fun(char*p[],int n) void fun(char**p,int n)如果数组作为函数参数,则数组形参会退化为指针,以上代码在编译器看来是等价的2.主函数形参使用的说明main函数形参的两种...

  • 📂C++内存管理3-探讨C++内存和回收教程

    1 C++内存对象大会战如果一个人自称为程序高手,却对内存一无所知,那么我可以告诉你,他一定在吹牛。用C或C++写程序,需要更多地关注内存,这不仅仅是因为内存的分配是否合理直接影响着程序的效率和性能,更为主要的是,当我们操作内存的时候一不小心就会出现问题,而且很多时候,这些问题都是不易发觉的,比如内存泄漏,比如悬挂指针。笔者今天在这里并不是要讨论如何避免这些问题,而是想从另外一个角度来认识C...

  • 📂C++第三十九篇 -- 研究一下Windows驱动开发(二)-- 驱动程序中重要的数据结构教程

    数据结构是计算机程序的核心,I/O管理器定义了一些数据结构,这些数据结构是编写驱动程序时所必须掌握的。驱动程序经常要创建和维护这些数据结构的实例。一、驱动对象(DRIVER\_OBJECT)每个驱动程序会有唯一的驱动对象与之对应,并且这个驱动对象是在驱动加载的时候,被内核中的对象管理程序所创建的。驱动对象用DRIVER\_OBJECT数据结构表示,它作为驱动的一个实例被内核加载,并且内核对一...

  • 📂linux环境下的C++错误报告汇总教程

    linux环境下的C++错误报告汇总1、“before"错误 一般出现before错误,都是语法错误,要么缺少“;”,或者少了一个“)”,还有就是while之类的关键字输入错误。 如:error.cpp:10:22: error: expected ‘)’ before ‘;’ token2、出现“line 2: 2642 Segmenttation fault …… error” 基...

  • 📂C++ linux 头文件的缺失添加教程

    利用find ../../ -name "*.h" |xargs grep "FOBJ\_EqualBy1Mem"找到相应的路径加到 c++的头文件里。注意在makefile 里边要加上 依赖该文件的路径打印日志 用 cout << x << endl;如果为string 用 x.c\_str()利用 ctags 进行函数定义查找总文件的开始 根目录: ctags -...

  • 📂C++中的内存操作教程

    1. memcpy#include<string.h> void* memcpy(void* dest , void* src, unsigned int count) 将源地址src指向内存区域的count个字节赋值到dest为起始地址的内存区域src和dest所指内存区域不能重叠,函数返回指向dest的指针注意,对象不能是简单的内存拷贝,例如C++中STL的字符串类型stri...

  • 📂C++中数组占用的内存计算教程

    在C++中int类型每个空间是4个字节,而bool类型是1个字节所以一般能用bool就别用int,节约空间数组占用内存的计算a[1001][1001]的空间大小=1001*1001(数组大小)*4(字节(byte))/1024(转化为KB)/1024(MB)

  • 📂Windows C++ 判断文件是否是图片格式的方法。教程

    一、通过后缀名去判断。bool IsImageByTail(const std::wstring &path) { std::wstring file_exten; size_t pos = path.rfind(L'.'); if (pos == std::wstring::npos) return false; file_exten...

  • 📂C/C++网络编程8——多进程服务器端之销毁僵尸进程教程

    上一节提到,当子进程执行结束,父进程还在执行,在父进程结束之前子进程会成为僵尸进程,那么怎么销毁僵尸进程呢?父进程主动接收子进程的返回值。销毁僵尸进程的方法:1:使用wait函数2:使用waitpid函数3:利用信号

  • 📂在Linux中通过源码安装C++软件的步骤教程

    在Linux中通过源码安装C++软件分3步:1. ./configure,默认情况下,可执行文件放在/usr /local/bin,库文件放在/usr/local/lib,配置文件放在/usr/local/etc,其它的资源文件放在/usr /local/share。可以通过参数--prefix,来配置安装目录。如果配置了--prefix,如: $ ./configure --prefix=...

  • 📂Java中的内存泄露 和 JVM GC(垃圾回收机制)教程

    一、什么是Java中的内存泄露?在Java中,内存泄漏就是存在一些被分配的对象,这些对象有下面两个特点,首先,这些对象是可达的,即在有向图中,存在通路可以与其相连;其次,这些对象是无用的,即程序以后不会再使用这些对象。如果对象满足这两个条件,这些对象就可以判定为Java中的内存泄漏,这些对象不会被GC所回收,然而它却占用内存。在C++中,内存泄漏的范围更大一些。有些对象被分配了内存空间,然后...

  • 📂AutoDesk产品,Maya 2018 安装,Microsoft Visual C++ 2012 安装失败,结果 = -2147024546,安装Microsoft Visual C++ 2012教程

    今日老弟装Maya 2018出现问题,我帮忙解决了一下问题,过程颇为曲折,记录一下,看能否帮到有类似困惑的朋友。我和老弟的电脑牌子一样,就现在自己电脑上装了,竟然开始和他的错误是一样的!都是Microsoft Visual C++ 2012 安装失败,结果 = -2147024546,应该是以前装的没卸载干净。首先我去下载了个叫做 AutoDesk官方卸载工具的鬼软件,但是删不干净。然后我就...

  • 📂Windows 下使用 VScode 运行 C/C++ 程序教程

    首先在官网下载 mingw-w64,建议下载 离线版,下载完成后,找一个合适的位置(相当于安装位置),解压安装包。进入解压好的文件夹下的 bin 文件夹,将当前路径复制下来,然后选中桌面上的此电脑,右击鼠标,选择属性,选择高级系统设置,点击环境变量,选择系统环境变量下的 Path,选择编辑,点新建,然后把刚刚复制的文件路径粘贴进去,然后点确定并退出。按下键盘上的 Win+r,输入 cmd,在...

  • 📂Linux下经常使用的C/C++开源Socket库【转】教程

    转自:https://www.cnblogs.com/gccbuaa/p/7015599.html1. Linux Socket Programming In C++ : http://tldp.org/LDP/LG/issue74/tougher.html2. ACE: http://www.cs.wustl.edu/~schmidt/ACE.htmlACE採用ACE\_OS适配层屏蔽各种...

  • 📂vscode分别在ubuntu和windows下C\C++的配置文件。教程

    1.Ubuntu16.04launch.json文件{ //Ctrl+Shift+B 编译生成 .out F5运行 // Use IntelliSense to learn about possible attributes. // Hover to view descriptions of existing attributes. // For more...

  • 📂【Windows系统】C++方式获取特定硬盘的使用详情教程

    通过Windows API可以获取磁盘总容量、空闲容量和可用空闲容量。代码如下:<pre class="has">include <windows.h>// 硬盘详情结构体struct DriveInfo{QString sDriName; //盘名 quint64 uiTotal; //总容量 quint64 uiFree; ...

  • 📂【Windows系统】C++ Qt方式获取所有磁盘使用详情教程

    磁盘的使用详情,及磁盘的总容量、剩余容量和剩余可用容量。代码如下<pre class="has">include <windows.h>include struct DriveInfo{QString sDriName; quint64 uiTotal; quint64 uiFree; quint64 uiFree2Caller; DriveIn...

  • 📂C++数组、指针、动态内存分配教程

    二维数组作为函数的参数问题#include<iostream> using namespace std; void print(int n,int a[][10]){//形参a是一个n行二维数组的首地址 for(int i=0;i<n;i++){ for(int j=0;j<10;j++){ cout<<a[...

  • 📂ubuntu安装配置postgresql教程

    postgresql 安装配置部分不再赘述,引自原文链接https://www.cnblogs.com/Siegel/p/6917213.html。这里对安装时候产生的一些问题,做一些简单的说明。对Linux系统有了更多的了解,不同的系统,一般常用的操作和工具略有不同,关于使用yum 还是apt-get,一般来说著名的linux系统基本上分两大类: 1 RedHat系列:Redhat、Ce...

  • 📂在Windows命令行中编译运行C/C++程序(转载)教程

    本文转载于:https://www.cnblogs.com/-beyond/p/6636485.htmldemo.cpp文件的位置是在 C:\Users\Administrator\Desktop 目录下第一步:在DOS界面进入这个目录第二步:用g++ 加上文件名,注意要加上文件扩展名,这样会生成一个a.exe的可执行文件(Windows默认生成a.exe,Linux默认生成a.out)因为...

  • 📂图说C++对象模型:对象内存布局详解教程

    原文链接:http://www.cnblogs.com/QG-whz/p/4909359.html图说C++对象模型:对象内存布局详解阅读目录0.前言1.何为C++对象模型?2.文章内容简介3.理解虚函数表3.1.多态与虚表3.2.使用指针访问虚表4.对象模型概述4.1.简单对象模型4.2.表格驱动模型4.3.非继承下的C++对象模型5.继承下的C++对象模型5.1.单继承5.2.多继承6....

  • 📂Python、C++、Windows 10 成监狱禁书,犯人不能学习编程和计算机书籍?教程

    InfoQ 记者今天在 Reddit 上看到了一则热门帖子:俄勒冈州监狱因为安全问题,禁止囚犯阅读包括 Python、C++、Windows 10、区块链技术、iOS 开发入门在内的数十种编程语言类书籍和技术入门类书籍。这篇新闻引发很多人的争议:为什么这样的书籍会成为监狱中的禁书呢?他们对监狱安全带来了什么隐患?这篇新闻来自 Salem Reporter 的报道,近期,俄勒冈州监狱给 Sal...

  • 📂C/C++内存分布教程

    每个程序运行起来以后,它将拥有自己独立的虚拟地址空间。这个虚拟地址空间的大小与操作系统的位数有关系。例如32位硬件平台的虚拟地址空间的地址可以从0~2^32-1,即0x00000000~0xFFFFFFFF,总共4GB大小。在32位Windows操作系统中,高地址的2GB位内核空间,用户空间只有2GB,而32位Linux的内核空间只有1GB,用户空间有3GB大小。而64位操作系统,用户可用空...

  • 📂C/C++中struct中内存对齐规则教程

    前言先来预热一下,下面两个简单的结构体,假设不在IDE运行测试,你能快速说出输出结果吗?不能,往下看。<pre class="prettyprint prettyprinted">``` struct B{ int a; char b; char c; }; struct C{ char a; int b; char c;...

  • 📂【转载知乎】C/C++内存对齐详解教程

    原文链接:https://zhuanlan.zhihu.com/p/30007037原文连接:https://zhuanlan.zhihu.com/p/300070371、什么是内存对齐还是用一个例子带出这个问题,看下面的小程序,理论上,32位系统下,int占4byte,char占一个byte,那么将它们放到一个结构体中应该占4+1=5byte;但是实际上,通过运行程序得到的结果是8 byt...