- 博客(25)
- 资源 (3)
- 收藏
- 关注
原创 C++的运算符(九)—— .* , ->*(成员指针运算符)
目录文章:C++中运算符的优先级 成员指针是什么?是指向一个类中某个成员的指针。注意是直接指向,不是通过某个对象指向的。如果要定义一个成员指针,用这样的语法:class cl{ public: int mint; double get_mint(float adder){ return mint+adder; }};int cl...
2019-01-17 10:45:41
8002
原创 C++的运算符(八)—— new/delete , new[]/delete[](动态内存分配运算符)
目录文章:C++中运算符的优先级 这篇文章主要讲动态内存分配运算符的用法和知识。 一、定义动态数组有时候,按照最大数定义数组并不是好方法——比如大部分时候数很小,而只有几次要用很大的数。这时候就会浪费内存。有一个办法可以解决:那就是定义动态的数组。我们可以这样定义数组:int* a...
2019-01-04 18:05:40
1065
原创 C++的运算符(七)—— * , & , sizeof(解引用与取地址运算符、获得大小运算符)
目录文章:C++中运算符的优先级 解引用与取地址运算符解引用与取地址运算符一句话的基本描述:假设有一个n级指针p,那么*p代表(n-1)级指针(n>0),&p代表(n+1)级指针(n>=0)。几个知识点:它们是可以被重载的,这在智能指针中很有用。 对于一个普通变量...
2019-01-02 20:13:32
899
原创 C++的运算符(六)—— + , - , ! , ~(涉及正负的运算符:正负号、逻辑非、按位取反)
目录文章:C++中运算符的优先级 正负号几个小知识:实际上,正号+没有任何作用,它只是配合负号的符号。 如果是一个正数或0,负号后就变成了相应的负数;如果是一个负数,则会变成相应的正数。(如果越界会导致一个奇怪的数) 它们都可以被重载。 ...
2019-01-02 13:03:09
2873
原创 C++的运算符(五)—— . , ->(成员访问运算符)
目录文章:C++中运算符的优先级 ' . ' 和 ' -> ' 用于类内和友元访问private、protected、public成员,子类访问父类的protected、public成员,外界访问public成员。其中 ' . ' 用于通过对象本身访问成员, ' -> ' 用于通过指向对象的指针访问成员。在Dev-C++ 5.11中,如果两者混用,会导致一个错...
2019-01-02 12:33:11
3784
原创 C++的运算符(四)—— () , [](函数调用和下标访问)
目录文章:C++中运算符的优先级 函数调用运算符: ()在函数名后面,通常要加上函数调用运算符,就是括号,表示调用。括号是唯一一个在重载时参数数目可变的运算符。有一种情况,函数名后面不用加括号…………相信大家都猜到了,那就是函数指针。函数指针的定义方法如下:返回值类型 (*函数指针名)(函数参...
2018-12-28 20:51:40
1028
原创 C++的运算符(三)—— () , {}(类型转换)
目录文章:C++中运算符的优先级 C++中有三种类型转换运算符:(type)name,type(name),type{name}。其中,第一种叫做C风格转换运算符,第二种和第三种叫做函数风格转换运算符。在类型名为long long、unsigned int、long double这样的中间带空格的名称时,需要在外面加一层小括号。在转换的表达式的优先级低于类型转换运算符时,需要在...
2018-12-21 17:58:10
561
原创 C++的运算符(二)—— ++/--(自增/自减运算符)
目录文章:C++中运算符的优先级 ++/--运算符,是自增/自减运算符,后缀运算符的优先级是2,前缀运算符的优先级是3。++/--运算符分为两部分:前缀和后缀。前缀自增/自减运算符: 用法:++a 、--a 。 意义:自增/自减变量,返回自增/自减后的值。后缀自增/自减运算符: 用法:a++ 、a-- 。 意义:自增/自减变量,返回自增/...
2018-12-20 19:51:03
1634
原创 C++的运算符(一)—— ::(作用域运算符)
目录文章:C++中运算符的优先级 ::运算符,是作用域运算符,是C++语言中优先级最高的运算符。它有以下几种用法:1. 代码块的作用域。在函数内如果有一个与全局变量重名的变量,可以用 ::a 的形式访问(a是全局变量名)。例如:#include<iostream>using namespace std;int a=1;int main(){ int ...
2018-12-20 12:50:31
2086
原创 C++中cin/cout和流符号的原理(对重载输入输出流比较有用)
cin/cout并不是C++的关键字,而是对象。C++的<iostrem>中,有一个istream类和一个ostream类,而cin就是istream类的对象,cout就是ostream类的对象。流符号是怎样实现的呢?C++支持重载运算符,而流符号(<<、>>)就是重载了左移和右移运算符的结果。i/ostream类有多个左移/右移运算符,用来输入/输...
2018-12-19 21:52:30
3390
原创 C++中运算符的优先级
C++运算符优先级列表 优先级序号 运算符名 目 结合性 备注 1 :: 2 从左到右 作用域运算符 2 ++ , -- 1 后缀自增自减运算符 () , {} 2 函数风格转型 () 2 函数调用 [] 2 下标访问 . , -> 2 成员访问 3...
2018-12-19 19:18:38
22453
1
原创 C++中类型的通常范围和所占空间大小
重要声明:以下表格是在 Windows10 和 Dev-C++5.11 和 g++ 和 64-bit Release 环境下测试的结果。C++类型的范围和所占空间大小 类型 数值范围 空间大小(sizeof) bool 0或1 1 char -128~127 1 unsigned char 0~255 1 short ...
2018-12-15 21:06:27
573
原创 C++的三种循环
有时,我们要让计算机重复做一件或多件事情,这时候就要用到循环了。C++有3种循环:for循环、while循环、do-while循环。 for循环for循环的格式如下:for(初始语句;循环条件;一次循环结束时执行的语句){ 循环体}在小括号内的三项都可以省略,如果全部省略( 形如 ...
2018-12-14 21:32:53
17364
2
原创 C++加密文本程序
加密算法:生成一个随机数(称作n);(占密码的前三位,统一把每一位加上97) 生成和原字符串大小同样多的数字(称作a),为了加密,把数字加上n;(占接下来的几位) 在原来每个字符上加上a中对应的值。(占最后几位)解密算法:分段(前三位一段,后面平均分成两份); 根据加密算法反向进行解密。代码如下:(加密)#include<iostream>#include...
2018-12-13 20:31:25
3581
原创 C++中关于a=a++的问题
先看一段代码:#include<iostream>using namespace std;int main(){ int a=0; a=a++; cout<<a; return 0;} 猜猜程序的运行结果? 运行结果: 1.编译警告([-Wall])[Warning] operation on 'a' may be undefine...
2018-12-12 12:51:34
3000
5
原创 C++的if/else语句、switch/case语句
有时候,代码中需要实现这样一个功能:当一个条件为真时做一件事,为假时做另一件事。这就引出了if/else语句。if/else语句规则如下:1. 标准格式:if(条件){ //条件为真时做}else{ //条件为假时做}2. 如果条件为假时要什么都不做,可以去掉else{}语句块。3. 如果大括号内只有一条语句,大括号可以省略不写。4. else只和它...
2018-12-11 18:27:01
2317
原创 C++实现求斐波那契数列的第n项
斐波那契数列,即1、1、2、3、5、8、13、21、34、55……,规律是从第三项开始,每个数都是前两个数之和。用编程实现求它的第n项,代码如下:#include"E:\C++ h\big_number_f.h"#include<iostream>using namespace std;int main(){ int n; cin>>n; string a...
2018-12-10 12:31:57
17941
2
原创 C++实现积分函数
用积分这个积分函数可以解决算面积的问题(要先实现要积分的那个函数),如算、、或这样的函数。 代码如下://integral.h#ifndef INTEGRAL_H#define INTEGRAL_Htemplate<typename Tfunc,typename Tans=double,typename Tnumber=unsigned long...
2018-12-09 12:43:24
16029
原创 C++实现分数类
在几乎所有的语言中(至少我知道的语言都是这样),浮点数都是有精度丢失的。怎么解决呢?分数类就是解决办法之一。 分数类采用分数的形式,保存了两个整数之比,确保了精度。 分数类,肯定是要有约分、通分等函数和加、减、乘、除运算符的。(当然,要先实现求最大公因数和最小公倍数函数)这些都是基本数学知识。 代码如下:#ifndef F...
2018-12-08 11:48:59
9152
2
原创 C++链表类
链表是一种线性数据结构,占用不连续的内存,用一个或两个指针(或元素的代号)保存与其相邻的元素。怎么用类实现一个链表呢?(这里我们讨论双向链表)首先,我们可以建一个数组,保存各元素,只不过元素的顺序不一定是按照下标排列的。元素可以用一个结构体表示,它有三个元素:数值、上一个元素的指针、下一个元素的指针。 然后,要添加头指针和尾指针,以确定头和尾的位置。 接着,我们最好考虑...
2018-12-07 12:55:55
1158
原创 快速输入输出类(C++)
我们知道,cin/cout是很慢的,所以我们经常scanf/printf。但是如果要求更严格一些,速度要更快,该怎么办呢?有一种解决办法,那就是——快速输入输出。 快速输入输出采用getchar()和putchar()函数,用了数字累加的方法输入/输出数。 我们也可以把快速输入输出定义成类,就像cin/cout一样。代码如下://qio...
2018-12-06 19:30:04
3895
原创 ASCII码显示器(C++)
这个显示器能显示ASCII码为32~126的字符。代码如下:#include<cstdio>using std::printf;using std::scanf;void output(){ printf(" _______________________\n"); printf(" | 字 符 | ASCII码 |\n"); for(int i=32...
2018-12-06 18:44:15
479
原创 在程序内编程(C++)
我的这个程序的目的是在程序(.exe)内输入一种代码,让这段代码执行。这是程序的运行图。那句 End of Program 就是代码输入的结束,后面的是程序的运行结果。代码规则:支持int、double、string、long(就是long long)、char类型。 支持“句首关键字”newvar(创建新变量)、change(改变变量的值)、input(输入变量的值)、ou...
2018-12-06 12:39:30
275
原创 用string容器实现大整数比较、加、减、乘和除(用减法实现)(函数版)
这些函数支持2~36进制,采用的是STL中的string容器。//big_number_f.h#ifndef BIG_NUMBER_F#define BIG_NUMBER_F#include<iostream>#include<string>#include<algorithm>using namespace std;string erase...
2018-12-05 21:23:28
641
原创 C++实现测试函数运行时间函数
使用方法:gettime(函数名,[要测试函数的参数,在0~3个范围内],时间单位)// 时间单位如果不写,默认为毫秒。// 时间单位的格式:// ns 纳秒// us 微秒// ms 毫秒// s 秒// min 分钟// h 小时// d 天具体实现(注:Windows系统)://get...
2018-12-05 12:51:08
1064
后缀表达式计算器.exe(C++)
2019-01-09
后缀表达式计算器.cpp(C++)
2019-01-09
C++处理两个整数表示的字符(英文/中文/符号混合)
2018-12-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人