![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
FPGA开源工坊
FPGA技术交流群:838607138
微信公众号: FPGA开源工坊
展开
-
C++判断string里面的内容是不是double类型
今天有小伙伴问怎么去判读string里面的内容是不是double类型的,比如string a= "3.14"这个的内容就是double类型的,当然string的内容也应该可以是科学计数法表示double类型的数,比如string a = “1.3e2”这个也应该判定为内容为double类型。下面通过两种方法来进行判断:第一种先上代码,再解释原理。#include <iostream>#include <string>#include <cstdlib>us原创 2020-05-24 21:26:49 · 2515 阅读 · 1 评论 -
快速排序
快速排序的分治法的一个典型应用,其时间复杂度是O(logN)。比如将6,12,1,4,7,15,3这7给元素进行排序。首先选出一个基准值,一般是选用第一个元素,这里也就是6。然后开始从最右边开始寻找比基准值小的元素放到基准值的左边,然后从左开始寻找比基准值大的元素放大基准值的右边。其执行过程:第一趟:基准值6 用一个变量来保存。设置两个哨兵,i=0,j=6。从右开始找比基准值小的元素,也...原创 2020-02-03 17:13:54 · 137 阅读 · 0 评论 -
计算2的n次幂
在计算2的n次幂的时候,我们可以采用pow这个函数,但是当数据太大的时候显然int double 等这些数据类型并不能保存下来,就会出现问题,这个时候可以采取数组存储的方式。1.使用pow函数。pow(x,y)为计算x的y次幂。如:pow(2,3)为计算2的3次幂。2.使用数组存储。核心算法是:我们把数组的每一个元素看作数字的每一位。如:a[3]={1,2,3},我们就看作12...原创 2019-03-25 21:52:37 · 6136 阅读 · 0 评论 -
const与指针
在定义指针时,如果使用const进行修饰,根据const出现的位置和const出现的次数我们可以分为三种情况:一、指向常量的指针,二、常指针,三、指向常量的常指针。一、指向常量的指针。定义形式:const 类型名 * 指针名 (也可以写做类型名 const * 指针名)例如:int a = 3, b = 2; const int * p = &a; (in...原创 2019-03-14 22:00:46 · 478 阅读 · 0 评论 -
数字雨
#include <windows.h>#include <ctime>#include <cstdlib>#define DEF_TIMER1 65536#define DEF_TIMER1_TIME 100LRESULT CALLBACK cb(HWND hWnd, UINT nMsg, WPARAM wParam, LPARAM lParam...原创 2019-02-24 22:14:21 · 2924 阅读 · 9 评论 -
俄罗斯方块
//main.c中的代码#include "game.h"LRESULT CALLBACK Tetris(HWND hWnd, UINT nMsg, WPARAM wParm, LPARAM lParm);HINSTANCE hAppInstance;int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPreInstance, L...原创 2019-01-07 16:32:26 · 277 阅读 · 0 评论 -
五子棋
我们使用了easyx,制作简单五子棋,两人对战,代码如下。//main.cpp中的代码#include "main.h"int main(){ main_game(); _getch(); closegraph(); return 0;}//main.h中的代码#pragma once#include <graphics.h>#include <...原创 2019-01-09 11:11:30 · 369 阅读 · 0 评论 -
c语言实现贪吃蛇
简单实现贪吃蛇,使用@符号代替蛇身,使用*符号代替边界,使用+符号代表食物。使用wasd控制方向。#include <stdio.h>#include <stdlib.h>#include <conio.h>#include <time.h>#include <Windows.h>int map[15][30] = {...原创 2018-12-14 10:42:23 · 369 阅读 · 0 评论 -
运算符重载
C++可以使我们定义多个名称相同而特征标(参数列表)不同的函数被称作函数重载,同样的将函数重载的概念扩展到运算符上,C++允许我们赋予一个运算符不同的含义。事实上我们已经经常的在使用运算符重载了,比如*这个运算符,在对地址操作的时候,将得到这个地址里面的值,用于两个数之间的时候,得到的将是两个数的乘积。运算符重载的语法:返回值 operator op(参数列表) 其中op表示合法的操...原创 2018-11-09 21:00:11 · 98 阅读 · 0 评论 -
标准输出流
标准输出流是流向标准输出设备(显示器)的数据。ostream类定义了三个输出流对象:cout,cerr,clog。(1)cout流对象:cout不是C++的关键字,是ostream流类的对象,在iostream中定义。用cout<<输出标准数据类型时,系统会根据类型调用与之匹配的运算符重载函数。cout流在内存中开辟了一个缓冲区,来存放流中的数据,当向cout流中插入一个end...原创 2018-11-03 21:00:10 · 2235 阅读 · 0 评论 -
常对象
常对象是指对象的数据成员不能被修改。常对象必须在定义的同时进行初始化,且不能改变。不能通过常对象去调用非const型的普通成员函数,但是可以通过普通对象去调用const函数。定义方式: const 类名 对象名(实参列表),或者类名 const 对象名(实参列表)#include <iostream>using namespace std;class CTest {...原创 2018-11-03 19:51:49 · 4479 阅读 · 0 评论 -
引用
引用就是给变量起别名,它并没有重新建立了一个副本 ,对引用做的任何操作都是对其代表的变量的改动。由于引用并不生成副本,所以在传递参数的时候效率更高。一:定义如:int i; int &a=i;这里就建立了一个对i的引用。要注意的是引用在定义的时候必须指明它要引用的变量。如int &a;a=i;这种是错误的。二:使用 1.直接使用#inc...原创 2018-10-31 21:42:23 · 157 阅读 · 0 评论 -
自加自减运算
自增自减运算符可以方便的对一个变量进行加1或减1运算。它有前置和后置两种形式。当使用后置时,程序先对该操作数进行引用,然后再对其自身进行加1或减1当使用前置时,程序先对操作数进行加1或减1,然后再对该操作数进行引用#include <iostream>using namespace std;int main(){ int a = 3, b = 3, c, d;;...原创 2018-10-24 21:31:50 · 1021 阅读 · 0 评论 -
gcc/g++常用参数
注:以下1.c和1.cpp均为源文件1. gcc 1.c和g++ 1.cpp 为直接生成一个a.exe的文件2.gcc -o 1.exe 1.c和g++ -o 1.exe 1.cpp 为生成一个1.exe的文件3.gcc -S 1.c和g++ -S 1.cpp 只激活预处理和编译,就是指把文件编译成为汇编代码4.gcc -ansi 1.c 和g++ -ans...原创 2018-10-21 18:04:01 · 434 阅读 · 0 评论 -
iso646.h
在c语言里iso646.h这个头文件可以让我们在使用&&这些符号的时候可以用and来代替。下面是在vs2017里面打开iso646.h这个文件的内容原创 2018-10-21 17:32:10 · 447 阅读 · 0 评论 -
PlaySound播放音乐
在vs2017环境下使用PlaySound播放音乐。#include <stdio.h>#include <stdlib.h>#include <Windows.h>#include <mmsystem.h>#pragma comment(lib, "winmm.lib")int main(){ PlaySound(TEXT("D...原创 2018-09-17 20:59:54 · 1649 阅读 · 0 评论 -
&&和||的短路特性
&&和||运算有一个短路特性简单叙述如下。要使(表达式1)&&(表达式2)运算结果为真则要求:表达式1,表达式2都为真,如果表达式1为假,则不计算表达式2了,因为此时已经确定(表达式1)&&(表达式2)运算结果不可能为真,这就是&&运算的短路特性。要使(表达式1)||(表达式2)运算结果为假则要求:表达式1,表达式2都为假,如...原创 2018-06-05 21:00:03 · 8907 阅读 · 0 评论 -
逗号表达式与赋值语句
逗号表达式的结果是逗号表达式中最后一个式子的值。两种逗号表达式与赋值语句的区别,例如:a=b,c;这个式子的最后的结果a的值是b,因为此时因为逗号低于赋值运算,故b先赋值给a,然后再计算逗号表达式。a=(b,c);这个式子的最后结果a的值是c,因为先算括号内的此时逗号表达式的值为c,然后将c的值赋值给a.#include<stdio.h> int main(void){...原创 2018-06-08 17:03:38 · 5114 阅读 · 0 评论