2023年 10月 7日

变量初始化

尽管听起来,初始化是一件不复杂的事情,事实上初始化在不同编程语言里各藏玄机。 初始化形式 初始化无非就是变量名、初始值和类型(可选)的组合,不同编程语言提供了截然不同的形式。这里把声明也当做初始化的“...

进一步了解
2023年 10月 7日

字符串的内存存储

对于支持单字符的编程语言,比如C/C++, 字符被当成整型保存,当作整数做运算,简单直接。字符串数据更多,分配新的内存区域保存更合适。 存储格式 太长的字符串 大部分编程语言提供续行符连接成更长的字符...

进一步了解
2023年 10月 6日

转义字符

对于人生,什么时候都感觉不够满意。编程语言的字符集是有限的,有限的字符集表达更多的功能,引入了转义字符之类的特殊字符。 不同的转义字符 为了支持特定的字符控制,比如换行或indent对齐等,编程语言一...

进一步了解
2023年 10月 6日

字符和字符串

单个字符(一般被''包围)和单个字符的字符串(一般被'包围)看起来很像,实则可能天差地别。脚本语言可以把任何字面量看成字符串,它的处理更简单优雅,对于编译型语言,程序员必然要面对差异。 字符类型用什么...

进一步了解
2023年 10月 6日

未初始化的变量

学习C语言局部变量,经常听到这个说法。为什么局部变量默认是未初始化的?解释它需要理解程序结构和栈操作。 栈内存 未初始化的变量是否能使用? 未初始化类型的默认值

进一步了解
2023年 10月 6日

基本运算

编程语言基本数据类型的加减乘除,看起来都很像。它们都和数学公示很像,除了乘法不能用X或x,这个是字母,除法不能用÷,因为这个字符在键盘上看不到。 除法的余数? 求幂 求模

进一步了解
2023年 10月 6日

语言的"一等公民"

一等公民,英文为"First-Class Citizen". 一般而言,某个类型支持语言定义的所有操作,包括赋值、修改、参数传递和参数返回。编程语言的基本类型一般都是一等公民,比如C语言的int类型。...

进一步了解
2023年 10月 6日

数据类型大小

编译型语言数据类型大小比较确定,可能有多种,但具体在特定平台特定编译器,大小一定是确定的。解释型语言或脚本处理数据类型更自由,默认看成“字符串”,在做数值运算自动转换。本文不过多讨论脚本类语言,它们不...

进一步了解