- 博客(13)
- 收藏
- 关注
原创 C++读写文件的两种方法
当使用二进制的方式读写文件的时候使用write()和read()方法。在写的时候会按照内容,强制切分为1字节,然后按字节写入文件;如果遇到需要写字符串时,由于字符串的长度不固定,将来读出的时候不知道哪些是字符串的内容,所以,可以先记录字符串的长度,再记录字符串,这样读的时候也先读出一个整型字符串长度,按这个长度读字符串。C++读写文件可以分为用二进制读、写和用流读写文件。此时就把ofs和ifs当成cout和cin就可以了。一、二进制的方式读写文件。二、流的方式读写文件。
2025-03-23 19:57:40
131
原创 C++字符串str.length() str.size() sizeof(str)区别
我们经常会用到C++字符串计算长度,那么,str.length(),str.size()和sizeof(str)有什么区别呢。而str.length()和str.size()结果总是一样,都是字符串本身占用的字符数,这两个只是名字不同,用哪个都可以。8 字节用于 SSO 的缓冲区(可以存储 15 个字符 + 1 个空终止符)。8 字节用于 SSO 的缓冲区(可以存储 22 个字符 + 1 个空终止符)。8 字节用于存储字符串长度和容量(通过位操作压缩存储)。8 字节用于指向堆内存的指针。
2025-03-23 19:43:01
148
原创 xcode和vs studio 2022分别如何在日常练习中写多个main函数
在vs studio中,如果写多个cpp文件,里面都有main函数,会报错无法运行,但是老师在写练习的时候可以看到写了很多,为啥不报错呢?大家可以在“视图”选项卡中,点击第一个“解决方案资源管理器”源文件文件夹中,源文件下有多个写有main函数的.cpp文件,将其中不想让本次执行的文件,右键最下面点击属性,在“配置属性”中选“常规”,第一行,“从生成中排除”,右侧选择“是”,即可将本.cpp文件排除,只留下一个本次要执行的即可。例如,上图是我的练习文件,第14个是我最新写的,可以将前面13个都排除。
2025-02-07 15:47:06
230
原创 git入门
2、输入git add . 这里的.也可以写为具体的某个文件名,.可以把该目录下所有的文件全部提交,提交以后会存在暂存区。此时是在暂存区还未提交到仓库,如果想要重新修改文件再提交,可以再次git add将原暂存区文件覆盖。3、输入git commit -m "XXXX",双引号之间是备注,该命令可以将文件存入仓库。1、输入git init进行初始化,输入这个命令会生成git本地仓库。在步骤2,可以通过git status命令查看状态,此时会提示。4、现在已经提交了,可以通过git log命令查看提交记录。
2025-01-05 17:41:01
87
原创 C++中结构体指针要做初始化
这里面出错的点是,首先一开始声明学生节点时声明的是指针类型,传入函数后发现无法赋值。这是因为对指针的使用不熟悉导致的,例如再声明一个指针类型的学生S3。想法是想做一个Teacher结构体数组,数组中每个元素带一个Student的单链表,类似与图的邻接表表示的一个数据结构。提示使用了未初始化的变量S3,这里应该先对它进行初始化,应该这么写。调用InitStudentNode函数对刚刚声明的4个学生结构体进行赋值。先命名2个结构体,再声明4个学生结构体和2个教师。假设有2个教师结构体,每个教师后面跟2个学生。
2024-04-26 17:30:33
391
1
原创 C语言字符串及结构体中的字符串如何赋值
将字符串char *name看成一个普通的指针变量,然后给他赋值,需要先用malloc函数申请一片地址,然后把指针指向想要的字符i->name = strdup(name);字符串有两种表示方式,字符数组和字符指针,也就是可以理解为存放字符的数组或指向的地址存储的类型为字符的指针。在C语言中,字符串不是基本数据类型,把字符串看成一个线性表就不那么难理解了。字符串只能在初始化的时候赋值,那么结构体中的字符串如何赋值呢?先学js再学C语言会感觉C语言字符串非常麻烦,不能随意赋值。
2023-05-09 15:45:16
1203
原创 C语言单引号与双引号-字符与字符串
实际上是单双引号写错了,在js语言中单双引号区别不大,但在C语言中是不一样的。在学习C语言char类型时,我认为自己和老师写的一样,编译时却报了警告。
2023-04-27 12:36:02
1105
1
原创 使用padding百分比控制展示位图片大小
father盒子的padding值有3个参数,分别是上边距,左右边距和下边距;上边距设置为66%即为grandpa盒子的66%,这样grandpa盒子的宽度变更后,father盒子的padding值会自动变更,里面宽度和高度均为father盒子100%的img盒子的宽度和高度也就会自动变更。现在我们有一种方法,可以不需要给图片确定的数值,通过设置img的父盒子的padding值来调整图片大小,这样,当这个图片展示位一行展示3个或4个或者任何几个图片的时候,图片的大小都会自动调整而不用一个个写了。
2023-04-02 17:21:09
239
原创 flex布局中巧用margin负值
在flex布局中如果每行展示4个盒子,左右两侧靠边,中间间距相同,可以选择的方法有很多,最容易想到的就是space-between,但是这种情况下需要给4个子盒子宽度,那么就不利于盒子封装,例如有时候可能一行是3个、有时候4个、或者5个展示位的时候,就需要重新写宽度,如果使用margin负值,就能解决这个问题。这时,仅grandpa盒子有宽度,其他盒子的宽度都可以自动设置,我们只需要确定每行需要几个盒子,如果每行4个盒子则设置son的宽度为25%,每行为5个盒子则设置son的宽度为20%,以此类推。
2023-04-02 17:03:03
466
1
原创 如何取对象的第一个键值对的键和第一个键值对的值
取对象的第一个键值对的键:取对象的第一个键值对的值:例如:age: 18使用node运行后结果是:nameagezs。
2023-04-02 16:09:30
810
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人