- 博客(21)
- 收藏
- 关注
原创 C++:数组与字符串
不幸的是,这与该术语在数学中更古老的含义不一致……在C或C++中,我们通常只会遇到索引过大而导致的数组越界,几乎不会遇到负数索引 (在python等脚本语言中,这通常为反向索引),但是另一方面,我们也常常使用有符号数作为索引,当数值在正数范围,一切都很好,但是,但是当数值过大,有符号数就会变成负数,负数索引就出现了,这会被隐式转换为一个更大的正数。相比之下,const std::string&引用了一个完整的std::string对象,即使它是只读的,也可能涉及额外的开销(例如,内部指针、大小等)。
2024-09-22 13:54:39 857
原创 C++:新枚举与新结构
考虑下面的程序因为就相当于,所以完全没问题,可是这完全不符合语义,并且,如果仔细看,我写错了一个季节,这样我还不如写数字,另外,如果我想得到枚举的字面字符串,我必须还得像这样打印,这些在C++必须有所改变。
2024-08-18 22:24:05 1045
原创 C++:从Type到Control
常量是指在程序执行过程中其值不会改变的量。命名常量(Named const)(也称为符号常量symbolic const或常量变量const variable):这些常量与标识符关联,可以通过标识符引用其值。字面量(Literal constants):这些常量直接出现在源代码中,没有与特定的标识符关联。
2024-08-17 08:32:16 784
原创 C++:不止于C
读者可能对以下的叙述很熟悉,因为它也是C的叙述。C++程序是包含声明的一系列文本文件(通常是头文件和源文件)。它们经过转换成为可执行程序,当C++实现调用其main函数时执行。
2024-08-11 18:45:46 955
原创 数构与算法:算法初步
是一个不错的参考网站是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间,空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度与时间复杂度来衡量。。
2024-08-10 17:52:06 956
原创 数构与算法:数据结构
的概念中。它的一般形式如下:这是一个绝佳,基本的定义,因为即使是已存在的最基本数据类型,如也可以经此划分,这便是抽象的概括作用。基于此定义,不同编程语言的具体实现是不同的,一般而言,
2024-08-10 17:51:33 1202
原创 C语言笔记(第n版):编译器与构建系统
Makefile 中变量的命名规则较为灵活,变量名可以包含字符、数字和下划线,但不能包含 #、= 或空字符,同时变量是大小写敏感的。变量的定义方式有多种,常见的有“=”和“:=”。使用“=”定义的变量是递归展开式变量,其值在引用时会根据其他相关变量的最新值进行动态计算。all:而使用“:=”定义的变量是直接展开式变量,其值在定义时就确定,不会受后续其他变量变化的影响。
2024-07-28 22:23:13 1353
原创 C语言笔记(第n版):序言
大一,我入门了C,那时的我,对一切都很新奇,觉得这门编程语言有着说不清的魅力,又或者说编程语言本身对我有着无限的魅力,我痴迷于此,并付出了不少精力,在学期结束后,我已经是知晓了基本的编程语法,并且已经有累计千行多的独立编写代码(虽然可能质量不高)。这是一个从纯粹到现实的转变,在我大学的一切技术学习动机中 ,几乎不存在现实的席位,我通常就是,这个有趣,我去学学,为了一个问题,经常搞好几天,不为什么,就为有问题。在不同的编程语言中,我总能发现一些相似的东西,但是却形式不同,或许这些是所谓的语法糖(
2024-07-28 17:36:26 241
原创 C语言笔记(第n版):文件
文件(file),是数据存储的一种形式,与我们在编程中的即时性数据不同,文件中的数据具有持久性。那我们可以将程序运行过程中生成的数据写入文件中,或者从文件中得到数据在编程中使用吗?当然可以,不过是将我们之前的控制台换成文件而已。而在这可转换的背后,是一种名为“流”(strem)之物。可以说这是一种很形象也很抽象的东西,它形象化数据成水流一样,从一端流向另一端,但是却很泛滥,因为有很多“流”。值得庆幸的是,在C中,我们可以用一种通用的接口去表示不同的流,而不用像Java一样那么细分。
2024-07-15 20:17:13 986
原创 C语言笔记(第n版):结构、联合与位字段
结构体定义与声明的一般性语法如下:如:// 声明struct Student { // 定义int id;上述代码定义了一个名为的结构体类型,其中包含了(整数类型)、(字符数组)和(浮点数类型)三个成员。(声明,在这里是前向声明)并不是必要的,这仅仅是告诉编译器,有一个名为的结构体类型,这时候此结构体类型将是不完整类型(incomplete type),因为编译器不知道此结构体类型的具体细节,最基本的,所占字节数。这里先创建一个的结构体辅助说明short hour;
2024-07-12 18:41:40 1780
原创 C语言笔记(第n版):多文件与模块化
C语言的多文件编译要解决的是如何将多个文件中的C源码,连接成一个可执行的程序。文章围绕这个问题,提供解决思路。
2024-07-09 17:09:16 1110
原创 C语言笔记(第n版):函数
为什么要谈论main的定义呢?return 0;return 0;return 0; 而官方,是这么定义的 也就是说,只给了两种标准版,但是允许其它定义,嗯,那怎么确定我写的是不是可行呢?其实最好的判断就是不判断,建议使用标准的写法,因为肯定都适用,就比如第二种就是比较标准的,常见的写法(就我认为)。 函数的定义,尽管在前面说过,但是不够细致,现在让我们系统来看一下函数定义语法statements;return_type(返回值类型): 指明函数的返回值类型。
2024-07-08 20:07:15 1049
原创 C语言笔记(第n版):数据类型与运算
每一种编程语言都有它自己的数据类型体系,C语言类型体系几乎是最小化的。文章介绍了C语言类型的类型及转换、左右值的一些方面。
2024-07-03 15:41:49 948
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人