- 博客(13)
- 收藏
- 关注
原创 C语言中二维数组中数组名相关自增问题
二维数组名,本质是一个数组指针。针对这个数组指针的的自增运算,说实话,依然是容易搞错和混乱的地方。所以稍微整理下话不多说看例子先:#include <stdio.h>int main(){ int arr[3][4] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}; for(int i = 2;i>=0;i--) { for(int j = 3;j>=0;j--) {.
2020-07-09 21:04:56
3400
原创 简单例子来讲讲 strlen 和 sizeof 的区别
首先, strlen 是 函数, sizeof 是 一个运算符然后, strlen 是对 字符串 求长度 遇到 空字符返回 sizeof 可以作用于数组、指针、类型、对象、函数等最后再引用某大佬的一句话:对 sizeof 而言,因为缓冲区已经用已知字符串进行了初始化,其长度是固定的,所以 sizeof 在编译时计算缓冲区的长度。也正是由于在编译时计算,因此 sizeof 不能用来返回动态分配的内存空间的大小.经验: 通过 strlen调用 返回的值做加减时, 要写成 st...
2020-07-09 18:17:03
338
原创 C语言中那些年我们容易犯错的一维数组操作
通过两个例子来加深对一维数组操作的理解实际是对指针,地址的理解。当数组名 +1,或数组的地址+1时,加的结果是经过了什么逻辑加乘?//这些例子主要演示一维数组访问的一些操作//也是面试里面经常会被问的//也是最基础的操作,但常容易犯错的//扫盲写法:// name[i] == *(name+i) == i[name]#include <stdio.h>int main(){ int arr[10] = {1, 2, 3, 4, 5, 6, 7, 8,
2020-07-05 21:54:14
471
原创 C语言可变参函数例子
基于一些开发需求,我们会不知道传入函数的参数个数,且这类参数有相同的内部处理逻辑时,可用到C语言的可变参数特性上个例子可明白其用法:一个是通过C语言的库函数,一个是通过指针,再一次说明指针的强大和灵活。#include <stdio.h>#include <stdlib.h>#include <stdarg.h>// 通过 arg 的方式int mul1(int num, int data1, ...){ int total = data1;
2020-07-04 11:42:42
300
原创 随笔三个C语言例子
在一些项目中,我们会经常看到 某个宏定义中 有 "#XXX"的写法,或者 x##y的写法。也就是说,# 和 ## 在宏定义中的作用是什么?通过如下三个例子简单理解下:# 解决了双引号中无法 替换的问题#include <stdio.h>//#define str(x) #x#define str(x) "bbbbbbbbbbbb "#x" aaaaaaaaaaaa"int main(){ printf("%s\n", str(100)); //bbb...
2020-07-04 10:32:28
216
原创 C++之路 Day9
C++运算符重载 今天专题说下C++中的运算符重载,重载这个概念是跨语言的,无论java还是python等面向对象编程语言中都有重载。那么什么是运算符 的 重载?C++中的 运算符(算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符等)有:+,-,*,/,%,++,--,=,<=,>=,!=,==,&&,||,!,&,~,|,^,<&...
2019-08-08 22:04:09
143
原创 C++之路 Day8
本文是友元 专题 什么是友元?英文翻译就是Friends。我们在设计一个类的时候考虑到封装性,访问权限,会把一些成员变量的访问属性定义为private,但是这样定义后,如果后期其它类想要访问这个类中的private访问属性的成员变量时,就需要修改那个类对应成员变量的访问属性,这样就修改了代码。那么如何做到不修改类成员变量访问属性的情况下,可以使其它类或全局函数访问到这个类的p...
2019-08-07 20:30:06
247
原创 C++之路 Day6
string类专题 string是一个类,它有很多成员方法,我们平时开发也主要是关注string在字符串处理方面的用法。所以本文主要以代码案例来说明其用法。以下案例涵盖了string类的绝大数多数成员方法的使用,开发时可作为手册快速查询。(代码经过全面自测可直接使用)#include <iostream>#include <string>#incl...
2019-08-07 19:28:03
214
原创 C++之路 Day5
什么是IO?我们在学习计算的组成时知道:计算机由输入、输出设备,显示器,存储器,处理器组成。在程序中要理解什么是IO,我们需要先明白一个概念:“流”。 流?看到这个字,我们能想到的事物有人流,水流,车流等。这些事物都有一些特点,比如有方向性,一定数量级。在计算机中流是个抽象的概念,是对输入输出设备的抽象,这些设备可以是文件、网络、内存等。流具有方向性。流可分为字节流和字符流。 ...
2019-08-06 18:40:25
216
原创 C++之路 Day4
什么是面向对象? 面对这个疑问,相信很多写了多年代码的朋友们一时也不知道怎么回答。引用一位大神的话说:OOP编程是利用“类”和“对象”来创建各种模型来实现对真实世界的描述。 什么是“对象”?对象,是不以人的意志为转移而又与自我的存在通过感性确定性进行关联的 客体事物,是简单的、直接性的存在、本质性的 现实。在哲学上,对象是简单、直接的存在本质,具有现实的本质性,是知识的...
2019-08-01 11:33:57
212
原创 c++之路 Day3
参数 什么是参数?我们买手机,电脑最喜欢看它们的参数,比如CPU是几核心,频率多少,内存多大等。广义 讲,参数可以理解成一个东西的属性的值。在程序中,参数可以看作是一个变量,变量是计算机的专有名词,变量来源于数学,是计算机语言中能储存计算结果或 能表示值 抽象概念。 在程序中,参数有一些分类和特性:形式参数,实参,可变参数,默认参数等。形参(形式参数)...
2019-07-29 19:11:35
177
原创 C++之路 Day2
C++类型 首先明确一个概念,什么是类型?我们知道程序可以说是由两部分组成:数据结构+算法。通过学习数学,我们知道形容一个东西的存在是形式时,我们可以用个,块,桶,串等词来描述,在买卖过程中,使用货币时,我们有元角分单位。在描述这些东西存在的数量时,我们就用到了数字,不同国家的语言在描述数量时的手法不一样。所以为了能将这些杂七杂八的东西给存入计算机,计算机对数据的存储进行了分类,并统...
2019-07-26 16:49:24
304
原创 C++之路 Day1
C++历史 目前C++已经发展到C++17,进行中的C++20。它的发明者Bjame Sgoustrup在贝尔实验室历经三次修订直到20实际90年代形成第一个标准。C++标准化后,Alexander stepanov创建了大名鼎鼎的STL(Standard Template Library)标准模板库,使得我们开发者可以使用很多现成的工具去存储,计算数据。想了解更多C++的历史请跳转...
2019-07-26 15:16:26
152
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅