自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 资源 (1)
  • 收藏
  • 关注

原创 指针和数组并不相同

首先我们必须要明白指针和数组并不相同先举个栗子:char *p;假设p的地址为1024;那么运行时候的步骤:1、先取的指针p的地址2、在取指针p指向的地址3、在将取得的地址转化为指向的内容char a[9] = “abcd”; a[i];假设数组a的首地址为2048;那么运行时取a[i]的步骤为:1、将a的地址(2048+i) //(这里的p是char * 类型)所以每个元素的长度都是一个字节。当然,如果是其他类型(int*,double*)每步其步长也会不同2、在将取得的地址转

2021-05-29 13:44:37 172

原创 C++中的四种数据类转换

C++强制类型转换static_cast //用于将一种数据类型强制转换为另一种(1)用于类层次结构中基类和派生类之间指针或引用的转换进行上行转换(把派生类的指针或引用转换成基类表示)是安全的进行下行转换(把基类的指针或引用转换为派生类表示),由于没有动态类型检查,所以是不安全的(2)用于基本数据类型之间的转换,如把int转换成char。这种转换的安全也要开发人员来保证(3)把空指针转换成目标类型的空指针(4)把任何类型的表达式转换为void类型注意:static_cast不能转换掉expr

2020-12-02 12:50:40 182

原创 关于循环里的continue、break、return的作用

1. continue 语句:C 语言中的 continue 语句有点像 break 语句,所不同的是,它不是强制终止,continue 会跳过当前循环中的代码,强迫开始下一次循环迭代。对于 for 循环,continue 语句执行后,自增语句仍然会执行。对于 while 和 do…while 循环,continue 语句重新执行条件判断语句。样例:#include <stdio.h>int main (){int i=0,j=0;for (i = 0; i < 4

2020-11-24 00:10:30 478

原创 对编程的看法

职业的乐趣编程为什么有趣?作为回报,它的从业者期望得到什么样的快乐?首先是一种创建事物的纯粹快乐。如同小孩在玩泥巴时感到愉快一样,成年人喜欢创建事物,特别是自己进行设计。我想这种快乐是上帝创造世界的折射,一种呈现在每片独特、崭新的树叶和雪花上的喜悦 1。其次,快乐来自于开发对其他人有用的东西。内心深处,我们期望其他人使用我们的劳动成果,并能对他们有所帮助。从这个方面,这同小孩用粘土为“爸爸办公室”捏制铅笔盒没有本质的区别。第三是整个过程体现出魔术般的力量——将相互啮合的零部件组装在一起,看到

2020-08-12 23:29:15 574

原创 Linux解压ZIP文件

Linux下解压ZIP文件很简单,使用unzip命令即可:在使用前需要检查你的ubuntu是否有装解压命令-->"sudo apt install unzip" 无误即可开始解压假设压缩包,temp.zip 在当前路径下:那么:直接使用 unzip temp.zip 命令即可但是,如果压缩包在其他路径下,建议先使用mkdir 创建 一个目录如果不创建的话 使用命令 unzip /PATH/temp.zip -d /当前路径 之后 解压的文件将会和你当前所在的目录创建一个同级目.

2020-08-04 21:37:17 168

原创 一个关于C和C++编译上存在的差异

有下面一段伪代码:////////////////////////////////////////////////////////////////////////////////////////////////////////int NUm1 = 1;int NUm2 = Num1;////////////////////////////////////////////////////...

2019-10-11 00:21:42 160

原创 linux----alias命令

alias:内置命令(没有路径),设置命令的别名,保护系统,方便unalias:别名取消临时设置alias cp=‘cp –i’unalias cp 取消系统的别命令永久生效针对root用户:vi /root/.bashrc 编辑alias cp=‘cp -i’source /root/.bashrc 命令生效#针对所有用户:vi /etc/pr...

2019-09-06 22:15:31 164

原创 每天一个Linux命令-----type

type 命令 来判断这个命令到底是可执行文件、shell 内置命令还是别名。常用参数type命令的基本使用方式就是直接跟上命令名字。type -a可以显示所有可能的类型,比如有些命令如pwd是shell内建命令,也可以是外部命令。type -p只返回外部命令的信息,相当于which命令。type -f只返回shell函数的信息。type -t 只返回指定类型的信息。示例:type...

2019-09-06 21:53:45 308

原创 一个简单的shell脚本,让你告别添加头文件的烦恼。

不知到你们有没有过这样的烦恼,每次噔噔的敲了一段代码后,准备,编译测试是否有存在,错误问题。可是这个时候啊,你发现编译器居然提示//*********************************************************************************//warning: implicit declaration of function ‘strlen...

2019-09-06 21:11:39 1147

原创 linux/Ubuntu下压缩与解压各类文件命令操作

1、压缩与解压xz文件(1)压缩xz -z filename(2)解压xz -d filename.xz2、压缩与解压tar文件(1)压缩tar -cvf filename(压缩到当前文件夹)tar cvf fileName.tar DirName(压缩到指定文件夹)(2)解压tar -xvf filename.tar(解压到当前文件夹)3、压缩与解压tar.xz文件...

2019-08-27 21:07:23 148

原创 linux常用命令-----mv操作你全会吗???

基本用法 :a.移动一个或则多个文件b.移动一个或则多个目录c.重命名文件或者目录2.移动提示打印信息 时候移动成功 -vmv -v *.file /PATH3.使用交互模式 提示目标路径处 是否有相同的文件 -i是否覆盖时 输入 y 即可mv -i file.c /PATH4.不覆盖同名文件 -n 也就是如果有重名文件取消移动mv -nv file.c...

2019-08-27 20:51:53 186

原创 Linux----库的制作

动态库和静态库:静态库:静态库在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库 优点: 可以移植性好,实时性会更好 缺点: 体积较大。 如果有多个程序共同调用了某静态库,在内存中需要多份的库代码静态库的制作:ar crs libmyhello.a hello.o ***.o ***.o//-r 将文件插入打包文件中 -s 创建档案文件的符号表 -c建立打包文...

2019-08-23 17:26:46 95

原创 Linux命令---apropos

apropos在 whatis 数据库中查找字符串补充说明apropos命令 在一些特定的包含系统命令的简短描述的数据库文件里查找关键字,然后把结果送到标准输出。如果你不知道完成某个特定任务所需要命令的名称,可以使用一个关键字通过Linux apropos实用程序来搜索它。该实用程序可以搜索关键字并且显示所有包含匹配项的man页面的简短描述。另外,使用man实用程序和-k(关键字)选 项,...

2019-08-22 10:40:13 250

原创 Linux面试题

在Linux系统中,以 文件 方式访问设备 。Linux内核引导时,从文件 /etc/fstab 中读取要加载的文件系统。Linux文件系统中每个文件用 i节点 来标识。全部磁盘块由四个部分组成,分别为引导块 、专用块 、 i节点表块 和数据存储块。链接分为: 硬链接 和 符号链接 。超级块包含了i节点表 和 空闲块表 等重要的文件系统信息。某文件的权限为:d-rw-_r–_r–,用...

2019-08-15 22:50:27 1691

转载 浅谈个人对代码规范的理解和必要

一、规范的代码可以促进团队合作一个项目大多都是由一个团队来完成,如果没有统一的代码规范,那么每个人的代码必定会风格迥异。且不说会存在多个人同时开发同一模块的情况,即使是分工十分明晰的,等到要整合代码的时候也有够头疼的了。大多数情况下,并非程序中有复杂的算法或是复杂的逻辑,而是去读别人的代码实在是一件痛苦的事情。统一的风格使得代码可读性大大提高了,人们看到任何一段代码都会觉得异常熟悉。显然的,规范...

2019-08-15 22:45:54 1021

原创 关于一个C语言倒叙输出的面试题

#include <stdio.h>#include <string.h>#include <stdlib.h>int main(){char* src = “abcdefgh”;int len = strlen(src);char *dest = (char*)malloc((len + 1) * sizeof(char));char *d =...

2019-08-15 10:53:32 159

原创 LInux下查找命令--Ubuntu系统

一.以文件名查找:1. find 命令find / -name “filename”目的:在根目录“/”开始搜被称为filename的文件,“filename”文件名可以包含通配符(*,?),注意:filename是文件名字符串,可以带双引号,也可不带find命令功能强大,它有很多选项让你以不同的方式搜索文件,例如,通过日期,文件大小,权限,拥有者等等。2. locate 命令lo...

2019-08-09 22:02:24 130

原创 Linux 快捷键命令

vim 的常用命令 ,让你快速告别鼠标移动光标h 左 j 下 k 上 l 右ctrl + e 一行一行移动界面ctrl + f 向下翻一页ctrl + b 向上翻一页ctrl + u 向上翻半页ctrl + d 向下翻半页w 跳到下一个字符首,按标点或者单词分割W 跳到下一个字符首,长跳 中间有连接符也算一个字符 end-of-line 也算一个字符...

2019-08-09 10:02:39 111

转载 C指针面试题集

说明:所有题目均摘录于网络以及我所见过的面试题目,欢迎补充!无特殊说明情况下,下面所有题s目都是linux下的32位C程序。先来几个简单的热热身。1、计算以下sizeof的值。char str1[] = {'a', 'b', 'c', 'd', 'e'};char str2[] = "abcde";char *ptr = "abcde";char book[][80]={...

2019-07-26 09:56:59 498

原创 C语言中一个关于++与+1优先级的问题

问:定义了一个int型数据,那么对他++ 或者对他 +1 有什么区别???答: 如果只是对他++ 或者+1 当然没有什么区别,但是在 运算中就有区别了。什么区别?++ 的 优先级没有+1 的高。例子:int i = 1, j = 2;printf("%d “, i);printf(”%d;\n", j);---------------------------------------...

2019-07-23 23:27:22 1219

原创 C语言中的整数自动转换原则

void foo(void){unsigned int a = 6;int b = -20;(a+b > 6) ? puts("> 6") : puts("<= 6");}一道很简单的题目,测试一下你是否知道C语言整数的自动转换原则输出是什么??? >6 ??? or <=6正确答案是 >6 为什么??原因是当表达式中存在有符号类型和无符号类型时...

2019-07-18 23:35:43 548

原创 C语言陷阱

关于if-else的多重嵌套问题if(0)if(1){printf(“2”);}else{printf(“3”);}if(1)printf(“4”);输出===> 4也就是说在不加花括号的情况下第一个if不成立的情况下 if是会默认向下包含第一个语句的?????为什么例:if(0)printf(“1”);if(1){printf(“2”);}els...

2019-07-15 23:13:55 151

原创 C语言中lseek()函数和fseek()函数的使用详解

C语言中lseek()函数和fseek()函数的使用详解这篇文章主要介绍了C语言中lseek()函数和fseek()函数的使用详解,C语言lseek()函数:移动文件的读写位置头文件:#include <sys/types.h>#include <unistd.h>函数原型 :off_t lseek(int fildes, off_t offset, int ...

2019-07-14 22:56:48 897

原创 ipc通信之管道

首先:一、无名管道pipe: 1,没有名字的 2,半双工 //读写不能同时进行 3,通过直系亲属访问继承 4,管道默认会阻塞 5,不能用lseek定位 6,操作没有原子性示例代码:#include <stdio.h>#include <unistd.h>#include <sys/types.h>...

2019-07-07 15:37:23 143

转载 关于scanf函数吃掉回车符四种办法

scanf函数的一些操作回车符问题1.在scanf()中使用’\n’屏蔽回车符号。scanf("%d\n",&n); //使用’\n’过滤回车scanf("%c",&c);2.在scanf()格式串最前面添加空格,屏蔽回车字符scanf("%d",&n);scanf(" %c",&c); //%c前面加空格,过滤回车3.在接收字符前,使用getchar...

2019-07-07 15:06:33 9075 7

c__primer....plus++code++and +++ ans.zip(这是我真理的其代码以及练习题和答案)

C Primer plus 第六版 中文版 是国外一本著名的编程书籍,所使用的版本是C11版本,这是我真理的其代码以及练习题和答案....

2019-07-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除