掌控自己的代码
记一次有收获的面试过程,这可能会改变我迄今为止的代码习惯和认知,并且我会受益于其中
休要花里胡哨!!!
面试官让我写了一段代码,大致是两个数组之间的相互加减操作
1 | float max = fmax(arr); |
面试官:你觉得你的代码有什么问题吗?
我: 可能就是在k可能带来的除0问题把
面试官:其它的呢?
我: …
面试官: 你写代码一定要肯定自己的输入输出,程序计算出的结构你要肯定,而不是让其他因素来影响你
我: …
你的i是float,prt是uchar,你知道会怎样做类型转换吗
编译器会自动去做
一定会这样去做吗,或者有不同的处理办法,不同的编译器呢?不要让编译器去决定你程序的运行结果,要对自己代码的结果要有一个肯定
我明白了,我可以在计算是加上类型转换的关键字
在我的认知中,代码高手就是各种技巧乱飞,能隐式绝不显示,arr[i]要写成 *(arr + i),注意布局的美感,一通花里胡哨。而往往忽略了程序的关键问题,正确性和肯定性和易读性
这是一个小小的问题,但却启发了我。
未来,做一个确信自己代码的人
改变ing