跳至主要內容

02. 编程原理 - 入门篇

LincZero大约 2 分钟

02. 编程原理 - 入门篇

目录

入门

概念、底层原理(通用)

  • 函数原型
    • 内容:使用函数前,C/C++编译器必须知道函数的参数类型返回值类型,函数原型将提供这些信息
    • 与定义区别:原型只描述函数接口(发送的信息和返回的信息),定义则包含了函数的代码
  • 提供函数原型方法
    • 源代码文件中输入函数原型
    • 或在头文件中定义其原型
  • 返回值
    • 一些语言将由返回值的函数称为函数(function),没有返回值的函数被称为过程(procedure)或子程序(subroutine)
    • 但C++/C,将这两种变体都称为函数

常量的运算和使用时的底层原理

常量也需要设置存储内存的类型

在常量的运算和使用中,常数需要使用内存空间来存储,而至于使用什么类型的内存空间呢?

可以进行显式标注或由程序隐式决定,以C/C++为例说明:

  • 显式标注(带后缀)

    • long:lL
    • unsigned:uU
    • 或者组合使用,如ulllull
  • 隐式判断(不带后缀)

    • 不标明会自动判断,如在16位平台上(INT_MAX=32767,LONG_MIN=2147483648):

      20000被表示为int,40000被表示为long,3000000000被表示为longlong

举例佐证

  • 不定义时使用常量时往往要加后缀,以便进行存储内存的类型选择,如进行加法运算标注后缀l,进行除法运算标注后缀f
  • 在早期C++的Release 2.0之前,cout << 'A'会把A自动存储为int类型,然后打印65cout << c_A则没有该情况

哈希表

百度百科

本词条由“科普中国”科学百科词条编写与应用工作项目open in new window 审核 。

散列表open in new window(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构open in new window。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数open in new window,存放记录的数组open in new window叫做散列表open in new window

给定表M,存在函数f(key),对任意给定的关键字值key,代入函数后若能得到包含该关键字的记录在表中的地址,则称表M为哈希(Hash)表,函数f(key)为哈希(Hash) 函数。