
C/C++
文章平均质量分 88
edward_zcl
这个作者很懒,什么都没留下…
展开
-
WINDOWS下CMake+MinGW64搭建C/C++编译环境
公众号:J平方 背景:Visual Studio编译C/C++程序太麻烦,故想仿造ubuntu系统在WINDOWS下利用VS Code+CMake+MinGW64搭建建立搭建C/C++编译环境,具体如下。重要参考链接。 1. 安装CMake 1) 上CMake官网直接下载后缀为.msi的安装文件,点击按照提示安装,本人安装路径为:“D:\Software\Pro\CMake” ...转载 2022-05-02 15:49:43 · 1377 阅读 · 0 评论 -
C语言中的结构体(struct)详解
C语言中,结构体类型属于一种构造类型(其他的构造类型还有:数组类型,联合类型)。本文主要介绍关于结构体以下几部分。 1、概念 为什么要有结构体? 因为在实际问题中,一组数据往往有很多种不同的数据类型。例如,登记学生的信息,可能需要用到 char型的姓名,int型或 char型的学号,int型的年龄,char型的性别,float型的成绩。又例如,对于记录一本书,需要 char型的书名,char型的作者名,float型...转载 2021-01-02 17:33:44 · 63669 阅读 · 23 评论 -
Leetcode 解题报告
据说刷完leetcode是准备编程面试的第一步。想到明年可能就要开始找工作了,先准备着吧。 计划今年11月份前做完,大概平均每天2-3题,难度应该不大,贵在坚持! 代码放在github上,地址:https://github.com/xingjian-f/Leetcode-solution (2016.10.1 更新,从6.30开始,截止到10.1,三个月时间,...转载 2020-12-16 18:34:13 · 1512 阅读 · 0 评论 -
关于RNN
最近在做rnn的实验,https://github.com/Bruuuuuuce/PKUAutoSubmithttps://github.com/AaronJny/emotional_classification_with_rnnhttps://github.com/bowdar/DeepLearninghttps://github.com/igormq/ctc_tensorflow_examplehttps://github.com/yufi1012/scnnspeech commandst转载 2020-11-18 22:08:37 · 324 阅读 · 0 评论 -
C语言二维数组的定义、初始化、赋值
这种常规形式的数组一般使用不过二维,并且数组名很特殊,有跟指针以及地址有密不可分的关系,但是不一样,并且它使用数据的静态存储区。要使用大容量的动态内存,需要单独开辟,这里不做介绍,并且支持变量形式的申请。更多c语言数组基础知识可以翻看我之前画的博客。先看一段代码#include <stdio.h>int main(){ int i, j; //二维数组下标 ...原创 2020-01-04 11:57:47 · 20311 阅读 · 1 评论 -
C语言:浅拷贝与深拷贝
这里先简单讲一讲c中的浅拷贝与深拷贝,关于更深层使用的拷贝构造函数,深拷贝构造函数,浅拷贝构造函数等,以及其他语言的深拷贝这里就不赘述了。结构体跟类其实很类似,不管是使用或者作用域上。浅拷贝:表层的引用,实际指向同一块内存深拷贝:存放在不同的内存空间当中typedef struct{ char name[20]; int age;}student;student st...原创 2020-01-04 11:45:53 · 3765 阅读 · 2 评论 -
C++中的范围 for 语句与二维数组
今天看多维数组,突然看到了一个没见过的名词,范围for语句。后来一查才知,在C++11新标准中新增了范围for语句。。但是像这篇博客里面的使用变量作为数组初始化大小,我就不认同了,另外它的这句话:要使用范围for语句处理多维数组,除了最内层的循环外,其他所有循环的控制变量都应该是引用类型。,是对 https://zhuanlan.zhihu.com/p/85072966?utm_source=w...原创 2019-10-03 22:39:46 · 599 阅读 · 2 评论 -
数组与指针(2)
之前写过很多关于C++中指针使用的博客了,其中就包含一篇数组指针,指针数组的博客,所以这里博客名字就叫做数组与指针(2)了。指针真的是一件让C++又爱又恨的东西,使用的时候,一定要知道指针指向了谁,这个谁又是什么身份。有了指针,C++可以很强大,直接操作很底层的东西,协议,内存以及外设,甚至可以作为所有语言的后端,座位编译器开发语言。另外,还需要记住一点,C++里面本身是没有多维数组的,就像...原创 2019-10-03 22:28:29 · 138 阅读 · 0 评论 -
二级指针简要理解
C/C++使用了指针,增加了很多灵活性,也很底层,能够精确,细粒度操作硬件计算,接口与内存,但是也带来了很多麻烦,很多时候自己都不知道指向哪了,自己在做哪个层面操作。。使用指针,一定要切记,使用同等级别(等级与类型)的指针指向需要指向的内容(东西),使用相配(作用域,环境)的指针操作你操作的对象(东西)。时刻记住指向哪了,在操作什么层次的东西。一、概念在如下的A指向B、B指向C的指向关系...原创 2019-08-06 22:04:27 · 748 阅读 · 0 评论 -
C++字符串类String
C语言只支持char类型数组或者指针来存储或指向字符串,C++抛弃了(当然准确一点,是兼容)char类型数组,在模板类basestring的基础上构建了自己按数据类型String,更准确的说是一个类,它不能算是C++基本数据类型,总体来说,加大简化了字符串的处理。可以先看看这个预热一下:http://c.biancheng.net/view/208.html一个非常好的网站。下面进入正...原创 2019-04-23 18:27:12 · 298 阅读 · 0 评论 -
C语言中char*和char[]用法区别分析
本文实例分析了C语言中char* 和 char []的区别。分享给大家供大家参考之用。具体分析如下:一般来说,很多人会觉得这两个定义效果一样,其实差别很大。以下是个人的一些看法,有不正确的地方望指正。本质上来说,char *s定义了一个char型的指针,它只知道所指向的内存单元,并不知道这个内存单元有多大,所以:当char *s = “hello”;后,不能使用s[0]=‘a’;语句进行赋值...原创 2019-04-22 14:24:07 · 45554 阅读 · 3 评论 -
二进制数的原码,反码,补码,以及0的补码,有符号数,无符号数
关于这点其实很多人一知半解,今天特此做一个梳理。首先看几个例子:假设计算机字长为8位1的原码(8位):0000_0001反码、补码跟原码一样。-1的原码(8位):1000_0001反码 :1111_1110补码 :1111_11110有+0和-0之分+0的原码(8位):0000_0000反码、补码同。-0的原码(8位):1000_0000反码 ...原创 2019-03-22 16:56:16 · 33574 阅读 · 0 评论 -
c++拷贝构造函数详解
转载自:https://www.cnblogs.com/alantu2018/p/8459250.htmlc++拷贝构造函数详解一、什么是拷贝构造函数 首先对于普通类型的对象来说,它们之间的复制是很简单的,例如:int a=100;int b=a; 而类对象与普通对象不同,类对象内部结构一般较为复杂...转载 2019-03-22 21:01:54 · 259 阅读 · 0 评论 -
c语言中的static关键字,以及局部变量,静态局部变量,全局变量与静态全局变量
static关键字在c语言中主要有两个作用。一、修饰变量。变量又分为局部变量和全局变量,但他们都在内存的静态区,静态变量只能被初始化一次。静态全局变量,作用域仅限于被定义的文件中,其他文件即使用extern声明也没法使用它。准确地说作用域是从定义之处开始,到文件结尾处结束,在定义之处前面的那些代码行也不能使用它。想要使用就得在前面再加extern。。静态局部变量,在函数体内定义的,就只能在这...原创 2019-04-07 22:09:07 · 2497 阅读 · 0 评论 -
C/C++语言中的int a; int* a; int** a; int (*a)[]; int (*a)(int),重点介绍指针数组与数组指针
这一部分往往很少被总结,但是却经常用到,在使用的时候要注意区分。先来一个基本的来入门吧!参考自:https://blog.youkuaiyun.com/qq_36744540/article/details/79832728数组指针首先,我们先介绍一下二维数组和二维数组的指针,二维数组相当于一个特殊的一维数组里面每个元素又是一个一维数组,例如:int a [ 3 ] [3],可以看成一个3行的一...原创 2019-04-08 18:25:36 · 29911 阅读 · 1 评论 -
C/C++中的二维数组,以及多维数组及其指针
数组是编程语言中常见的数据类型,有必要二维以及多维数组,以及对应的指针,做一个梳理,便于以后查询。首先你要区分不同的指针,尤其是二级指针与二维数组的行指针,二级指针与指针数组。。学习编程,最好结合计算机内存一起理解。还是先从最基本的开始。之前写过一篇二维数组的博客,参考:https://blog.youkuaiyun.com/edward_zcl/article/details/89100600...原创 2019-04-08 19:37:22 · 1495 阅读 · 2 评论 -
C语言中的引用,以及传递引用,数组传递
详解c++指针的指针和指针的引用以下参考自:https://www.cnblogs.com/li-peng/p/4116349.html展示一下使用指针的指针和指针的引用修改传递给方法的指针,以便更好的使用它。(这里说的指针的指针不是一个二维数组)为什么需要使用它们当我们把一个指针做为参数传一个方法时,其实是把指针的复本传递给了方法,也可以说传递指针是指针的值传递。如果我们在方法内部修改...原创 2019-04-08 20:04:48 · 26570 阅读 · 1 评论 -
数组指针作为形参传递
当数组作为函数形参时,数组的地址可以用做函数调用的实参。可以通过数组地址的传递,在函数内可以对该数组进行访问和修改。eg:#include <stdio.h>#define SIZE 10 /* 形式1 */void func_1(const char a[SIZE]) { printf("获取数组的第一个元素=%c\n", a[0]); printf("...原创 2019-04-17 00:02:59 · 10970 阅读 · 0 评论 -
C/C++指针详解(经典,非常详细)
C语言没有类的概念,C++才引入了类与对象,但是真正使得C/C++非常强大的原因,我觉得是它可以直接使用指针操纵内存,很多其他编程语言底层原理或者嵌入式通信协议原理也都是通过指针完成的,但是使用指针也有它的问题,容易指错位置,造成错误或者内存泄露。 前言:复杂类型说明 &nbs...原创 2019-04-22 12:30:57 · 3494 阅读 · 4 评论 -
C语言中的指针和内存泄漏问题
C语言中的指针和内存泄漏导致内存破坏的指针操作类型指针赋值复制内存区域内存覆盖使用动态内存必须考虑的检查点未初始化的内存 使用malloc函数申请的内存空间,没有初始化就直接通过指针访问,这时候内存空间中可能有的垃圾值会被使用,程序动向不可预测。因此应该结合memset使用,申请空间后第一时间调用memset函数进行初始化。内存覆盖 指向一块内存区...转载 2019-03-20 23:21:26 · 397 阅读 · 0 评论