自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(192)
  • 资源 (7)
  • 收藏
  • 关注

转载 C++ append

append函数是向string的后面追加字符或字符串。头文件是<string>.1).向string的后面加C-stringstring s = “hello “; const char *c = “out here “;s.append(c); // 把c类型字符串s连接到当前字符串结尾s = “hello out here”;2).向string的后面加C-string的一部分string s=”hello “;const char *c = “out here “;s.

2021-09-02 10:02:55 1764

转载 c/c++中new与malloc的解法

1.我们先来讲述一下new和delete? 在C++中new/delete是开辟/释放内存的,那他们与C语言中的malloc/free有什么区别呢?(1)new的底层是通过malloc来开辟内存的,但new比malloc多一项功能,那功能就是开辟完内存还要进行初始化操作。 比如:new的基本操作为:int *p=new int(10);10代表堆上开辟的整型内存的初始值;Test *p=new Tset();这个操 作不仅会在堆上开辟Test类...

2021-07-27 11:40:18 1000

转载 C++动态分配(new和malloc的用法及区别)

参考:https://blog.csdn.net/zhong29/article/details/80930919https://blog.csdn.net/nyist_zxp/article/details/80810742一、malloc和free1、函数声明:void *malloc(int size);说明:malloc向系统申请分配size字节的内存空间,返回类型为void*类型;2、使用int* p;p = (int*)malloc(sizeof(int));free(

2021-07-27 11:21:30 397

原创 链表做的简易手机销售系统

#include <stdio.h>#include <stdlib.h>#include <string.h>typedef struct phone{ int number; char name[30]; int price; int num; struct phone *next;} myphone;myphone *head,*p,*p1,*p2;int n =0;void myadd(){ p1...

2021-07-14 22:04:29 189 1

原创 C链栈删除数据

#include <stdio.h>#include <stdlib.h>typedef struct mylinkstack{ char mych; struct mylinkstack *next;} myls;myls *mypush(myls *myls2,char ch){ myls *line = (myls*)malloc(sizeof(myls)); line->mych = ch; line->nex...

2021-07-14 12:54:11 426

原创 C链表解释。。。

#include<stdio.h>#include<stdlib.h> typedef struct lnode{ int num; char data; struct lnode *next; } mynode; mynode *initmynode(){ mynode *p = NULL; mynode *temp = (mynode*)malloc(sizeof(myno...

2021-07-13 22:12:22 107

转载 visual studio的C/C++修饰名及调用约定(如__cdecl)

C/C++:函数的编译方式与调用约定以及extern “C”的使用函数在C++编译方式与C编译方式下的主要不同在于:由于C++引入了函数重载(overload),因此编译器对同名函数进行了名称重整(name mangle)。因此,在C++中引用其他C函数库时,需要对声明使用的函数做适当的处理,以告知编译器做出适应的名称处理。函数的调用约定涉及了函数参数的入栈顺序、清栈主体(负责清理栈的...

2019-08-15 20:18:51 775

转载 c++,__stdcall和__cdecl调用

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/q139861200/article/details/78202302 调用协议常用场合 __stdcall:Windows API默认的函数调用协议。 __cdecl:C/C++默认的函数调用协议...

2019-08-15 20:17:35 421

转载 vs里 .sln .suo .ncb等后缀名详解

Visual Studio.NET采用两种文件类型(.sln和.suo)来存储特定于解决方案的设置,它们总称为解决方案文件。为解决方案资源管理器提供显示管理文件的图形接口所需的信息从而在每次继续开发任务时,不会因开发环境而分散精力; *.sln:(Visual Studio.Solution)通过为环境提供对项目、项目项和解决方案项在磁盘上位置的引用,可将它们组织到解决方案中。比...

2019-07-11 15:28:36 1743

原创 C++ 结构体

struct stuPosition{ double x; double y; stuPosition() { memset(this, 0, sizeof(stuPosition)); }};struct stuUserPosition:public stuPosition{ DWORD dwUserID; DWOR...

2019-07-04 09:44:02 123

原创 C++ 关于负数和无字符类型的整型 进行运算符相关处理的提醒

今天有个BUG很莫名其妙、平常很少关注、因为都是整型(以为在简单的运算时候会自动转)、所以进行 > 和 < 类型的运算时没太在意、结果就倒在这坑里了、故、写代码时、尽量用同类型参数进行运算...

2019-06-28 20:13:08 474

转载 SqlServer存储过程详解(转)

1.创建存储过程的基本语法模板:if (exists (select * from sys.objects where name = 'pro_name')) drop proc pro_namegocreate proc pro_name @param_name param_type [=default_value]asbegin sql语句e...

2019-06-24 11:16:22 1644

转载 转 《图说区块链》读书笔记(完整版)

书籍框架第一章 起源账本演变概述区块链最直接的词汇就是分布式账本,所以有必要从记账角度探寻其诞生的意义。书中按照时间顺序梳理了账本的历史演变过程:旧石器时代->死记硬背和心算有生产者剩余后->简单刻画和直观绘图刻画跟不上需求后->结绳记事,账本起源原始社会末期->文字流水账公元前五世纪->单式记账法十二世纪左右->复式...

2019-04-10 09:25:42 453

转载 C/C++中常出现的#ifndef,#define,#endif解析

想必很多人都看过“头文件中的 #ifndef/#define/#endif 防止该头文件被重复引用”。但是是否能理解“被重复引用”是什么意思?是不能在不同的两个文件中使用include来包含这个头文件吗?如果头文件被重复引用了,会产生什么后果?是不是所有的头文件中都要加入#ifndef/#define/#endif 这些代码?     其实“被重复引用”是指一个头文件在同一个cpp文件中被...

2018-12-09 18:02:21 407

转载 C++函数模板

节省程序员的精力了当然是。。。比如写一个排序算法。。。如果不用模板函数的话要像下边这样。对每种数据类型都要写一个函数。void sort(int data[],int n) ; //整型排序void sort(double data[],int n); //双精度型排序void sor(float data[] ,int n); //浮点型排序……而用模板,只需要写一个模板函数就可以了templa...

2018-12-09 10:08:17 669

原创 2012 VS代码检测工具

先下载安装Cppcheck再打开2012VS    工具---外部工具C:\Program Files (x86)\Cppcheck\cppcheck.exe--enable=all --quiet --verbose --template=vs $(SolutionDir)$(ItemDir) 

2018-12-07 16:55:03 1441

转载 C++ sqrt()

math.h 数学函数库,一些数学计算的公式的具体实现是放在math.h里,具体有:1 三角函数double sin (double);double cos (double);double tan (double);2 反三角函数double asin (double); 结果介于[-PI/2, PI/2]double acos (double); 结果介于[0, PI]doubl...

2018-12-05 15:59:33 21724

转载 C++内联函数详解

1.函数调用原理"编译过程的最终产品是可执行程序--由一组机器语言指令组成。运行程序时,操作系统将这些指令载入计算机内存中,因此每条指令都有特定的内存地址。计算机随后将逐步执行这些指令。有时(如有循环和分支语句时),将跳过一些指令,向前或向后跳到特定地址。常规函数调用也使程序跳到另一个地址(函数的地址),并在函数结束时返回。下面更详细地介绍这一过程的典型实现。执行到函数调用指令时,程序将在函数...

2018-12-05 09:40:56 156

转载 C++中堆和栈的完全解析

C++中堆和栈的完全解析内存分配方面:堆: 操作系统有一个记录空闲内存地址的链表,当系统收到程序的申请时,会遍历该链表,寻找第一个空间大于所申请空间的堆结点,然后将该结点从空闲结点链表中删 除,并将该结点的空间分配给程序,另外,对于大多数系统,会在这块内存空间中的首地址处记录本次分配的大小,这样代码 中的delete语句才能正确的释放本内存空间。我们常说的内存泄露,最常见的就是堆泄露(还有...

2018-12-04 15:21:01 435

转载 C++中堆,栈,队列

C/C++内存分为五个部分:1、栈区(stack):存放函数的参数值,局部变量的值等(编译器自动分配释放 )。  2、堆区(heap): 注意:与数据结构中的堆完全不同,分配方式类似于链表(程序员分配释放,若程序员不释放,程序结束时可能由OS回收 )。  3、全局区(静态区):全局变量和静态变量存储在一块,初始化的全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在相邻的...

2018-12-04 15:02:12 158

转载 C++ vector和list的区别

1.vector数据结构vector和数组类似,拥有一段连续的内存空间,并且起始地址不变。因此能高效的进行随机存取,时间复杂度为o(1);但因为内存空间是连续的,所以在进行插入和删除操作时,会造成内存块的拷贝,时间复杂度为o(n)。另外,当数组中内存空间不够时,会重新申请一块内存空间并进行内存拷贝。2.list数据结构list是由双向链表实现的,因此内存空间是不连续的。只能通过指针...

2018-12-04 11:42:10 112

转载 C++中反正切atan2(y,x)与atan(x)

1、atan(x)表示求的是x的反正切,其返回值为[-pi/2,+pi/2]之间的一个数。2、atan2(y,x)求的是y/x的反正切,其返回值为[-pi,+pi]之间的一个数。atan2返回值解释:在三角函数中,两个参数的函数atan2是正切函数的一个变种。对于任意不同时等于0的实参数x和y,atan2(y,x)所表达的意思是坐标原点为起点,指向(y,x)的射线在坐标平面上与x轴正方...

2018-12-03 10:50:50 809 2

原创 C++ strcmp对比函数

#include &lt;cstring&gt;char word[5] = "?ate";for (char ch='a';strcmp(word,"mate");ch++){    cout&lt;&lt;word&lt;&lt;endl;    word[0]=ch;}  

2018-11-27 14:49:05 976

原创 C++ for循环一些独特demo

    string word = "stresseds";    //cin&gt;&gt;word;    char temp;    int i,j;    cout&lt;&lt;"word.size():"&lt;&lt;word.size()&lt;&lt;endl;    for (j=0,i=word.size() -1;j&lt;i;i--,j++)    {  

2018-11-27 11:20:45 330

转载 C++ STL中判断list为空,size()==0和empty()有什么区别

关于两个的区别,首先size()==0为bool表达式,empty()为函数调用,这一点很明显。查看源代码, bool empty() const { return _M_node-&gt;_M_next == _M_node; } size_type size() const { size_type __result = 0; dis...

2018-11-26 17:16:48 4130

转载 C++学习:list容器详解(一)

list容器详解      首先说说STL       STL就是Standard Template Library,标准模板库。这可能是一个历史上最令人兴奋的工具的最无聊的术语。从根本上说,STL是一些“容器”的集合,这些“容器”有list,vector,set,map等,STL也是算法和其他一些组件的集合。这里的“容器”和算法的集合指的是世界上很多聪明人很多年的杰作。     ...

2018-11-26 17:16:12 196

原创 指针

    double wages[3] = {10000.0,20000.0,30000.0};    short stacks[3] = {3,2,1};    double * pw = wages;    short * ps = &amp;stacks[0];    cout&lt;&lt;"PW="&lt;&lt;pw&lt;&lt;",*PW="&lt;&lt;*pw&am

2018-11-24 11:32:37 133

原创 C++ &

    //int * pd = new int;    //*pd =2;    //int **a = &amp;pd;    //int ***b = &amp;a;    //    //cout&lt;&lt;"第一层    "&lt;&lt;*pd&lt;&lt;endl;    //cout&lt;&lt;"第一层    "&lt;&lt;**&

2018-11-22 17:38:06 837

转载 vbs

VBS是基于Visual Basic的脚本语言。VBS的全称是:Microsoft Visual Basic Script Edition。(微软公司可视化BASIC脚本版)。其语言类似Visual Basic(VB)   Dim a,b,c a=inputbox("a是:","输入半径") b=Inputbox("b是:","输入半径") c=a*2...

2018-11-22 15:35:02 428

原创 C++ 指针

    int * testTmp;    testTmp = 0xB8000000;            //编译不通过、数值不能直接赋值给指针    cout&lt;&lt;"*testTmp:"&lt;&lt;*testTmp&lt;&lt;endl;      int * testTmp;    testTmp = (int *)0xB8000000;  //必须强转为...

2018-11-21 14:53:30 105

原创 C++ 指针重点

long updates = 6;long * fllowerEx;fllowerEx = &amp;updates;*fllowerEx = 666;        //必须给指针初始化为一个确定、适当的地址、不然不能进行赋值操作cout&lt;&lt;"*fllowerEx:"&lt;&lt;*fllowerEx&lt;&lt;endl;...

2018-11-21 14:45:02 164

转载 enum变量的取值范围

2018-11-21 10:48:40 2749

转载 命名空间(解决了为什么使用using namespace std;的疑惑)

命名空间是用来组织和重用代码的编译单元。NameSpace(名字空间),是为了解决命名冲突的问题而引入的概念。通过使用 namespace xxx(就是xxx使用的范围),你所使用的库函数或变量就是在该名字空间中定义的,这样一来就不会引起不必要的冲突了。C++标准程序库中的所有标识符都被定义于一个名为std(standard)的namespace中。  一 :&lt;iostream&gt;和...

2018-11-10 16:29:33 7090

转载 vs中 main和_tmain的区别

用过C的人都知道每一个C的程序都会有一个main(),但有时看别人写的程序发现主函数不是int main(),而是int _tmain(),而且头文件也不是&lt;iostream.h&gt;而是&lt;stdafx.h&gt;,会困惑吧?一起来看看他们有什么关系吧 首先,这个_tmain()是为了支持unicode所使用的main一个别名而已,既然是别名,应该有宏定义过的,在哪里定义...

2018-11-10 11:48:42 342

转载 #include "stdafx.h"

"stdafx.h",名称的英文全称为:Standard Application Framework Extensions  所谓头文件预编译,就是把一个工程(Project)中使用的一些MFC标准头文件(如Windows.H、Afxwin.H)预先编译,以后该工程编译时,不再编译这部分头文件,仅仅使用预编译的结果。这样可以加快编译速度,节省时间。  使用方法:  使用预编译头文件需要首先指...

2018-11-10 10:44:51 153

转载 关于VisualC++的ATL、MFC、CLR对比

MFC、ATL和CLR是VC2005内置的3大库,涵盖了windows的各种开发方法和开发应用。当然关于C++开发的库不止这3个,不过这3个是微软推荐。从编程所处层次而言,WIN32为最底层,其次是MFC.然后是CLR. WIN32 winAPI MFC MFC类库 CLR .net库1. WIN32常规就是不用MFC,使用API函数编的程序。2. MFC库有很多年的历史了,MFC是基于W...

2018-11-10 10:14:58 3165

转载 路由表的原理和作用

路由器是一种典型的网络层设备。它在两个局域网之间按帧传输数据,在OSI/RM之中被称之为中介系统,完成网络层责在两个局域网的网络层间按帧传输数据,转发帧时需要改变帧中的地址。它在OSI/RM中的位置如图1所示。  一、原理与作用 路由器(Router)是用于连接多个逻辑上分开的网络,所谓逻辑网络是代表一个单独的网络或者一个子网。当数据从一个子网传输到另一个子网时,可通过路由...

2018-10-31 15:05:14 31921 1

转载 路由下一跳地址

简单说就是数据包进来后,路由器查看这个包的目的地址,然后根据自己的路由表转发到下个端口,这个端口就是下一跳的地址。路由器的功能是将数据包在不同网段间转发。路由器上一般带s口、e口,S口是连接不同路由器的端口,E口是路由器上带的端口,带几个E口就可以分几个网段。一个数据包过来后,路由器就要检查一下这个包是发到哪里去的,看它的目的地址。如果目的网段在本路由器内就直接转发,这时就直接送到相应的网口上去...

2018-10-31 14:12:26 12237 2

转载 TCP/IP协议各层数据格式及首部含义

TCP/IP四层模型原帖:http://www.cnblogs.com/BlueTzar/articles/811160.htmlTCP/IP参考模型    ISO制定的OSI参考模型的过于庞大、复杂招致了许多批评。与此对照,由技术人员自己开发的TCP/IP协议栈获得了更为广泛的应用。如图1所示,是TCP/IP参考模型和OSI参考模型的对比示意图。  2.1 TCP/IP参考模型的层...

2018-10-26 17:51:31 2470

转载 TCP报文格式详解

TCP报文是TCP层传输的数据单元,也叫报文段。1、端口号:用来标识同一台计算机的不同的应用进程。1)源端口:源端口和IP地址的作用是标识报文的返回地址。2)目的端口:端口指明接收方计算机上的应用程序接口。TCP报头中的源端口号和目的端口号同IP数据报中的源IP与目的IP唯一确定一条TCP连接。2、序号和确认号:是TCP可靠传输的关键部分。序号是本报文段发送的数据组的第一个...

2018-10-25 18:15:13 707

cppcheck-1.85-x86-Setup

C:\Program Files (x86)\Cppcheck\cppcheck.exe --enable=all --quiet --verbose --template=vs $(SolutionDir) $(ItemDir)

2018-12-07

vs2008升级器

vs2008升级器

2017-08-23

游戏引擎讲解

无意之中看到上任程序员遗留下来的文档 觉得不错

2014-09-24

适合linux初学者的一些小知识

同事制作的、只是上传给初学者了解、适合linux初学者的一些小知识

2014-07-22

EurekaLog内存泄漏工具

EurekaLog内存泄漏工具:应用于多个IDE、可和exe壳兼容

2014-07-22

weblogic 10.3 的部署以及配置数据源

本人对weblogic 10.3的总结以及描述

2011-04-03

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除