C++ 基础
同叔练级之路
多维度成长者,笃信勿在浮沙筑高台
独立思考至关重要,千万别让自己的脑子成为别人思维的跑马场
展开
-
Chapter I 程序设计和C语言(大纲)
1.1 什么是计算机程序程序,就是一组计算机能识别和执行的指令。1.2 什么是计算机语言计算机语言,计算机和人都能识别的语言。// 关键还是人能够识别的语言,因为计算机只能识别二进制代码1.2-1计算机语言发展历史1.机器语言(二进制代码) 2.符号语言(汇编语言)3.高级语言经历三个阶段,非结构化语言,结构化语言,面向对象语言1.3原创 2013-05-16 17:51:52 · 999 阅读 · 0 评论 -
我对汉诺塔的理解
最近在复习C++相关的算法,而这之中就有汉诺塔,网上也看了很多信息,代码很简单,但是感觉原理没有讲透。我就想着我来分享我对汉诺塔的看法。一、汉诺塔问题 汉诺塔:汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。原创 2015-06-20 16:58:56 · 1954 阅读 · 0 评论 -
二叉树的前序遍历三种方法
第一种最常用的就是直接暴力递归的方法:/** * Definition of TreeNode: * class TreeNode { * public: * int val; * TreeNode *left, *right; * TreeNode(int val) { * this->val = val; * th原创 2015-08-01 14:54:30 · 773 阅读 · 0 评论 -
C语言中memset函数详解
功 能: 将s所指向的某一块内存中的每个字节的内容全部设置为ch指定的ASCII值, 块的大小由第三个参数指定,这个函数通常为新申请的内存做初始化工作 用 法: void *memset(void *s, char ch, unsigned n); 程序例: #include #include #include int main(void) {转载 2015-09-15 09:47:26 · 570 阅读 · 0 评论 -
C++面向对象高级开发_极客班_第一节课笔记
1. C++编程简介学习目标:培养面向对象的观念,能写出正规的、大气的代码。1.1 C++分类Object Base 基于对象 C++ with pointer : String C++ without pointer : ComplexObject Oriented 面向对象 继承 委托等1.2 C++ 发展C -> new C -> C with class原创 2015-11-15 11:33:02 · 553 阅读 · 0 评论 -
C++面向对象高级开发_极客班_第一节课笔记_section2
C++面向对象高级开发极客班第一节课笔记_section24.参数传递与返回值参数传递与返回值是一个非常重要的内容。以前学习的时候没有体会到,这次听侯捷老师讲了之后,真的是醍醐灌顶。4.1 构造函数的私有 与单例calss A{public: static A& getInstance(); setup(){};private: A(){..} A(const A原创 2015-11-16 22:52:22 · 549 阅读 · 0 评论 -
C++面向对象高级开发_极客班_第一节课笔记_section3
5 操作符重载与临时对象5.1 操作符重载的概念在C语言中是没有操作符重载的概念的。C语言的操作都是通过函数来实现的。C++是少数几个可以提供操作符重载相关的语言。C++对操作符的重载,不仅让操作符的功能更多样化,也丰富了C++的使用。操作符重载,本质上就是函数操作符重载分为成员函数重载 和 非成员函数重载class AA c1, c2;c1 += c2 // (3)对于操作符“+=”,编原创 2015-11-17 16:21:10 · 460 阅读 · 0 评论 -
C++面向对象高级开发_极客班_第二节课笔记
Big threeclass 有两种 ,一种是带指针的另一种是不带指针的。不带指针的类最典型的就是complex类,而带指针的最典型的就是string类。带指针的类有很多特性,其中最重要的就是big three.#ifndef _MYSTRING_#define _MYSTRING_class String{public: String(const char* cstr = 0原创 2015-11-19 21:36:40 · 512 阅读 · 0 评论 -
从零开始的 JSON 库教程(一):启程 _学习笔记
老师的内容已经写的很完整。结构等可以在原网址找到。这里记录 我对代码中不理解及通过搜索、尝试后获得的单元测试原网址:https://zhuanlan.zhihu.com/json-tutorial原创 2016-10-18 20:46:28 · 747 阅读 · 0 评论 -
C++中cin、cin.get()、cin.getline()、getline()、gets()等函数的用法
学C++的时候,这几个输入函数弄的有点迷糊;这里做个小结,为了自己复习,也希望对后来者能有所帮助,如果有差错的地方还请各位多多指教(本文所有程序均通过VC 6.0运行)1、cin 2、cin.get() 3、cin.getline() 4、getline() 5、gets() 6、getchar()附:cin.ignore();cin.get()//跳过一个字符,例如不转载 2014-03-11 21:02:18 · 510 阅读 · 0 评论 -
getline()函数
在我的印象中,getline函数经常出现在自己的视野里,模糊地记得它经常用来读取字符串。但是又对它的参数不是很了解,今天又用到了getline函数,现在来细细地总结一下:首先要明白设计getline函数的目的,其实很简单,就是从流中读取字符串。而且读取的方式有很多,包括根据限定符,根据已读取的字符的个数。从这个函数转载 2014-03-11 20:58:02 · 931 阅读 · 0 评论 -
chapter1 习题
一、输入a,b,c的最大值/* 2013年5月16日18:01:21 目的: 输入 a,b c 三个值,输出其中的最大者*/# include int main(void){ int a, b, c, t; // t为交换值所用 printf("输入 a = "); scanf("%d", &a); printf("输入 b = "); scanf("%d", &b原创 2013-05-17 10:38:27 · 810 阅读 · 0 评论 -
chapter2 算法——程序的灵魂
数据结构:对数据的描述。算法:对操作的描述。算法+数据结构=程序2.1什么是算法算法:广义上,为解决一个问题而采取的方法和步骤。计算机算法分为两类,非数值算法和数值算法。2.2 简单的算法举例例2.1 1*2*3*…*100从这个例子里面,给出了新的思路,也就是循环的概念。通过循环能解决这类问题。例2.2 有50个学生,要求输出成绩在80分以上的学生的学号和成绩原创 2013-05-17 12:37:50 · 905 阅读 · 0 评论 -
chapter2——习题
1. 算法:解决问题的步骤和方法。2. 结构化的算法:运用顺序,选择,循环三种结构所表示的算法。这三种结构能解决一切问题。并得到了图灵的理论证明。3. 顺序结构:顺序化解决问题选择结构:在遇到选择的难度时可以提供解决方案循环结构:对于一些重复性的操作可以通过循环来解决,将大问题简化步骤,理清思路。二、代码1、/* 2013年5月17日13:37:54 目的:原创 2013-05-20 14:54:43 · 761 阅读 · 0 评论 -
chapter3——最简单的C程序设计
3.1 数据的表现形式及其计算3.1.1 常量和变量常量: 程序运行过程中,其值不能变的量变量: 代表一个有名字的、具有特定属性的一个存储单元。在程序运行期间,变得的值是可改变的。1、常量常量分为: 整型常量、实型常量、字符常量、字符串常量、符号常量这里特别要注意符号常量:#define PI 3.1416 符号常量,指定用一个符号名称表示一个常量。符号常量原创 2013-05-23 22:28:37 · 822 阅读 · 0 评论 -
Visual Studio 2012中编写C程序
换了win7系统后,突然发现VC++6.0不兼容了,我听说有的同学的行,反正我是不行.那就用VS2012呗。。。。我们来看看怎么用: 打开文件->新建->项目,新建一个项目 选择win32控制台(注意不要选错,我在这栽了不少跟头),在下面随便输入一个文件的名字就行,根本不用像网上说的要改什么文件的后缀,然后点击下一步,出现对话框,在空项目前面打勾,单击完成。出现转载 2013-11-04 19:57:02 · 1813 阅读 · 0 评论 -
chapter3习题
// 2013年11月4日21:47:21# include # include int main(){ int n; double p, r; scanf("%d%lf", &n, &r); p = pow((1+r), n); printf("%lf\n", p); return 0;}/*---------------------原创 2013-11-05 21:48:33 · 1378 阅读 · 0 评论 -
c++运算符优先级
优先级操作符描述例子结合性1()[]->.::++--调节优先级的括号操作符数组下标访问操作符通过指向对象的指针访问成员的操作符通过对象本身访问成员的操作符作用域操作符后置自增操作符后置自减操作符(a + b) / 4;array[4] = 2;ptr->age = 34;obj.age = 34;转载 2014-01-08 14:17:25 · 595 阅读 · 0 评论 -
C++ 标准, C 标准
C++ 标准C++98 (ISO/IEC 14882:1998) is the first edition.C++03 (ISO/IEC 14882:2003) is the second edition.C++11 is the third edition.C++14 is the fourth edition.C++17 is the fifth edition.每次升级标准都...原创 2019-07-31 14:58:42 · 363 阅读 · 0 评论