下面应该越来越少人看了,只要扫一眼有个印象就行,不需要在这里掌握。

C

参考:用c来构建一个链码系统

变量

通过 事先定义(statement) 末尾需要一个分号

int count;
int count = 10;

内建数据类型:

标识 数据类型 示例
void 空类型  
char 单字符型/Byte char last_initial = ‘H’;
int 整数 int age = 23;
long 长整数 long age_of_universe = 13798000000;
float 带小数数字 float liters_per_pint = 0.568f;
double 双精度带小数数字 double speed_of_swallow = 0.01072896;

函数定义

一对大括号+逗号分隔内部变量+分号,return用于设定输出结果

int math-add(int x, int y) {
    int result = x + y;
    return result;
  }

调用

math-add(10, 18)
> 28

为了方便调用计算结果,把结果存入变量中 一对括号+逗号分隔内部变量+分号

int add4reuse = math-add(10, 18);

问题:以上步骤都是在内存中操作,重启机器就没了,如果有需要,则可以进一步写入文件或者数据库中,实现持久性存储。

结构定义:用于新建 类

类 = 多变量绑在一起,变成一个包

typedef struct {
    float x;
    float y;
  } point;   /point是新建框架的名字

新建框架的使用。设定实例:实例+点+变量

point p;
p.x = 0.1;
p.y = 10.0;

float length = sqrt(p.x * p.x + p.y * p.y);

pointer 系统:指针

int* x;   /这样的写法对新手来说清晰
int *x;   /这是日常的写法 

/* A pointer to a new empty Qexpr lval */
lval* lval_qexpr(void) {
  lval* v = malloc(sizeof(lval));   /
  v->type = LVAL_QEXPR;    / 指针属性:类型
  v->count = 0;    /指针属性:
  v->cell = NULL;   /指针属性:
  return v;
}

字串 char*

数组 array

条件操控

if+括号+若有多个条件,则用 && 并列 或 || 或 分隔

 if (x > 10 && x < 100) {
   puts("x 大于10 且小于100!");
 } else {
   puts("x 小于11或者大于99!");
 }

循环

用在处理重复性操作

#define MACROXXX(args, cond, err) if (!(cond)) { xxx(args); return lval_err(err); }

使用 #define 来定义,三个参数分别代表:参照参数,条件,出错信息。整个宏代表:如果条件不成立,则 执行xxx(参照参数),并输出 出错信息。 注:此处没设定如果条件成立的处理方式

/* 调用 */
MACROXXX(a, (a->count == 1                 ), "Function 'xxx' passed too many arguments!");
MACROXXX(a, (a->cell[0]->type == LVAL_QEXPR), "Function 'xxx' passed incorrect type!");
MACROXXX(a, (a->cell[0]->count != 0        ), "Function 'xxx' passed {}!");

C的一些机制

调-返 (callback):用于后台加载,后台运算不错,但由于并行计算时代的到来,这个很好的机制变成了最容易出问题的地方。

设计全面的语言:通链

主要的语法特征:前置标识

机制:

特点:设计非常完备,而且,这样的完备设计已经稳定标准化了多年。

缺点:普及度不高,而且,因为设计太过完备,难免隐藏不少问题,只是因为应用太少,这些问题暴露的不全。

对于lisp,只需要学习其设计,而不需要学习其具体的编程

难读天书:简符码

目的在于提供快速简便的拣选。

虽然难懂,但因为应用比较多,所以还是需要掌握部分规律。

通用常见型:js+html+css特混编队

这是目前最流行,也最通用的,虽然效率还不太好,但随着其普及,这方面的改善一直在进行中……

最主要部分是js,其越来越全能。