wordpress

2023年 10月 15日

函数是如何返回到调用者的?

CPU在处理函数调用时,其实它本身不知道调用结束后应该返回哪里,需要程序员指定返回地址。高级编程语言,编译器为调用函数代码自动加上返回到调用点并继续执行的"代码"。 汇编语言的跳转 栈 提到函数调用,...

进一步了解
2023年 10月 15日

值传递和引用传递

值传递和引用传递是函数参数传递的两种类型,一般而言,基本数据类型都是值传递,数组和对象采用引用传递减少对象复制开销,但也有特例。 值和引用传递本质一样 不同编程语言的参数传递 对于整型、字符、枚举、浮...

进一步了解
2023年 10月 15日

函数

大部分编程语言都支持函数,函数式编程语言例如Haskell/ML/F#更是把函数作为第一等公民。 函数起源 函数起源于数学,最早是17世纪莱布尼茨用于表达”一个变量的变化”, 后来由我国清代数学家李善...

进一步了解
2023年 10月 15日

重定向

输入输出重定向是相当有意思的一门技术,比如有的人每个月的收入自动转10%到支付宝,20%进了老婆的账户。这么有效益的事情,基本所有的操作系统都支持,本质上它不是编程语言特性,编程语言只是为了更方便调用...

进一步了解
2023年 10月 15日

命令行参数

用过Unix命令行,都会感受它的强大。Unix like包括Linux发行版、macOS等命令行在大部分情况下比图形化高效太多,很多高手都在用命令行。 CUI和GUI 尽管专业的程序员通常用CUI, ...

进一步了解
2023年 10月 15日

缓冲区

缓冲区是一个很广义的概念,小到CPU、Cache和内存,大到大国之间,整个地球甚至整个宇宙都有各种缓冲区。一般而言,靠近硬件的编程语言更多关心缓冲区的实现和效率,越是高级或脚本语言虚拟程度越高,缓冲区...

进一步了解
2023年 10月 15日

输入

编程语言提供最基本的输入输出,输入一个预期的数据也不是看起来那么简单,如下一一展开。 不同输入形式 带额外字符的输入 额外字符有分隔作用,对于输入反而会产生误解。 输入不成功 输入的忽略字符 输入需要...

进一步了解
2023年 10月 15日

换行和回车

"空白字符"一章有介绍打字机换行和回车的差异,不同操作系统的实现也不太一样。 操作系统"换行"的不同形态 为什么文本文件"\r\n"和"\n"效果似乎无差别? 兼容的换行符

进一步了解
2023年 10月 15日

空白字符

字符看不到它的存在,就像空白一样,被称为空白字符。空格字符是空白字符的一种。空格、制表符、换行符、回车符、换页符、垂直制表符都是“空白字符”. 空白字符的意义 空白字符的忽略

进一步了解