C++笔记
赵大寳Note
公众号:赵大寳Note(ID:StateOfTheArt),跟我一起探索世界
展开
-
C++常用头文件
C++常用头文件#include <cstdint> for C++, or #include <stdint.h> for C.定义了一些整数类型别名,例如INT_MAX, INT_MIN,。#include <climits> for C++, or #include <limits.h> for C.该头文件定义了根据OS和编译器实现的基本整数类型限制的常量。#include <unistd.h> unix类型操作系统api的封装,原创 2021-08-04 12:58:59 · 5218 阅读 · 1 评论 -
Eigen Cheat sheet
// A simple quickref for Eigen. Add anything that's missing.// Main author: Keir Mierle#include <Eigen/Dense>Matrix<double, 3, 3> A; // Fixed rows and cols. Same as Matrix3d.Matrix<double, 3, Dynamic> B; // Fix原创 2020-12-21 11:14:49 · 353 阅读 · 0 评论 -
c++类实例化的两种方式:new与不new的区别
new创建类对象与不new区别A a;A * a = new a();以上两种方式皆可实现类的实例化,有new的区别在于:前者在堆栈中分配内存,后者为动态内存分配,在一般应用中是没有什么区别的,但动态内存分配会使对象的可控性增强。不加new在堆栈中分配内存大程序用new,小程序直接申请只是把对象分配在堆栈内存中new必须delete删除,不用new系统会自动回收内存起初刚...转载 2018-10-22 20:38:47 · 15712 阅读 · 0 评论 -
C++中的平方、开方、绝对值怎么计算
#include &lt;math.h&gt;//平方 pow()int a = pow(4,2);// 4的平方=16//开方int b = pow(4,0.5);// 4的平方根=2int c = sqrt(4);// 4的平方根=2原创 2018-09-11 21:47:53 · 249967 阅读 · 3 评论 -
cpp中初始化vector的5种方式
Initializing like arrays :vector<int> vect{ 10, 20, 30 };Specifying size and initializing all values :int n = 3;// Create a vector of size n with// all values as 10.vector<int>...转载 2018-09-04 13:22:47 · 4006 阅读 · 0 评论 -
g++ error: ‘printf’ was not declared in this scope
由于“printf”是C语言的打印方法,所以在g++编译器下需要引用头文件#include <stdio.h> 或者将printf换成c++中cout打印方法同理: error: ‘nullptr’ was not declared in this scope ...原创 2018-07-26 00:31:36 · 36855 阅读 · 1 评论 -
C++判断两个浮点型数字是否相等
bool Equal(double num1, double num2){ if((num1 - num2 > -0.0000001) && (num1 - num2 < 0.0000001)) return true; else return false;}原创 2018-07-04 23:34:03 · 2943 阅读 · 0 评论 -
区别cin,scanf,gets,getchar
遇到一个情景,需要通过控制台输入数字构造一个单链表,数字之间以空格分开,输入回车表示输入完成,这个可以通过一个循环来完成这个动态输入。但是在遇到第一个字符就是Enter时,表示我想构造一个空链表进行测试,但是控制台gets【1】函数:gets(字符指针)【2】头文件:stdio.h(c中),c++不需包含此头文件【3】原型:char*gets(char*buffer);【4...原创 2018-07-04 23:04:28 · 388 阅读 · 0 评论 -
C++ string 操作
C++基础::为什么不能cout一个string?C++ 字符串长度:求字符串长度用.size()或者.length() 不要用sizeof()C++删除string最后一个字符的几种方法:#include&lt;iostream&gt; #include&lt;string&gt; using namespace std; int main() {...原创 2018-05-28 01:35:09 · 1431 阅读 · 0 评论 -
中文数字转阿拉伯数字
这个题与LeetCode第13题罗马数字转换很相似 13. Roman to Integer 我开始想用C++处理,但是C++对于原创 2018-05-17 18:21:42 · 6540 阅读 · 1 评论 -
深入 char * ,char ** ,char a[ ] ,char *a[]
1 数组的本质数组是多个元素的集合,在内存中分布在地址相连的单元中,所以可以通过其下标访问不同单元的元素。2 指针指针也是一种变量,只不过它的内存单元中保存的是一个标识其他位置的地址。。由于地址也是整数,在32位平台下,指针默认为32位。。3 指针的指向?指向的直接意思就是指针变量所保存的其他的地址单元中所存放的数据类型。int * p ;//p 变量保存的地址所...转载 2018-05-17 18:33:47 · 277 阅读 · 0 评论 -
C++中的容器{vector、stack、queue、map、pair、set}
vector向量C++ vector 容器浅析向量(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container)。跟任意其它类型容器一样,它能够存放各种类型的对象。可以简单的认为,向量是一个能够存放任意类型的动态数组。1、头文件#include&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;vector&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;原创 2018-04-06 18:27:36 · 884 阅读 · 0 评论 -
创建无头结点单链表
#include "stdafx.h"#include <iostream>using namespace std;typedef int ElemType;struct ListNode { int val; ListNode *next; ListNode(int x) : val(x), next(NULL) {}};class Solut...原创 2018-04-01 23:23:45 · 2021 阅读 · 0 评论 -
Binary tree二叉树
二叉树定义、构建、先中后遍历、层次遍历、树深度#include "stdafx.h"#include <iostream>using namespace std;#define maxSize 100typedef struct BTNode{ char data; struct BTNode *lchild; struct BTNode *r...原创 2018-03-31 14:49:13 · 262 阅读 · 0 评论 -
栈的数据结构与基本操作
C语言:// C program for array implementation of stack#include "stdafx.h"#include <stdlib.h>#include <limits.h>// A structure to represent a stackstruct Stack{ int top; unsi...原创 2018-03-30 12:56:12 · 208 阅读 · 0 评论 -
笔试编程题输入输出模板备忘
C语言:借用C中的malloc/free#include &amp;quot;stdafx.h&amp;quot;#include &amp;quot;stdlib.h&amp;quot;int main(){ int m, n; int i, j; int **p; scanf(&amp;quot;%d%d&amp;quot;, &amp;原创 2018-03-29 22:53:33 · 2678 阅读 · 0 评论 -
递增有序单链表合并
1.实现将两个带头结点的链表L1和L2进行连接,连接后的链表仍然使用原来的存储空间;结果为链表L2连接到L1的末尾。思路:找到链表L1的尾节点,使其指针域指向下一个链表的头结点(同时将链表L2所占用的内存空间进行回收)。合并之前: 合并之后: #include "stdafx.h"#include <iostream>using namespace std;...原创 2018-03-30 11:31:45 · 1678 阅读 · 0 评论