Android开发学习——Day4(C语言基础三&实战:进制转换)

学习目的

1.回顾基本数据类型、数据类型转换和自增/自减知识;

2.封装函数的操作(.c/.h文件);

3.了解宏定义;

4.数组;

5.实战:进制转换器。

学习过程

知识要反复咀嚼,技术要反复锤炼。对C语言基础所学过的知识翻来覆去的巩固是有价值的。而对于一些没有接触过的新知识,新用法更是要认真理解,练习。我对函数的运用基本了解,但是就将函数封装并应用却不是很熟悉。还有宏定义,更是未曾见过。

技术

1.封装函数:使用头文件,将函数封装。

操作:

.h文件:用来暴露函数给接口,所封装函数的声明均录于此。

.c文件:用来完成封装函数的具体实现,也可以编写私有化的部分。

优点:

1)增强移植性

2)使代码简洁化

3)安全性

缺点:

容易出现头文件相互嵌套出错

2.宏定义

1)通过宏定义,可以很好的解决上述封装函数的缺点问题。


宏定义-1

2)开关作用,用于切换开发版本和发布版本。


宏定义-2

3.实战项目:进制转换器(二进制)

刚开始我按照自己的思路编写了一段代码,想实现输入一个十进制数字,打印其对应二进制数字的功能。但是尝试多次后仍无法得到预期结果。


代码实现--失败

反复思考发现,原来是上图圈中部分,即算法设计部分出现问题。依照我的思路,用原数字依次以2的若干次方取余的方法得到二进制数字是错误的。因为,在某些取余过程中余数会大于二,无法达到预期目的。经过网上学习并加以自己的思考,改进如下:


代码实现-成功

感悟

学习是一个渐进的过程,需要慢慢积累,不求速成。有时候会觉得自己成长太慢,但是转念一想,这未尝不是好事,揠苗助长断不可取。有时候一些小细节问题注意不到,例如在使用循环时,其中又要用到数组,觉很容易忽略数组的下标是从0开始的,诸如此类。所以说,还是得沉下心来,继续努力。

你可能感兴趣的:(Android开发学习——Day4(C语言基础三&实战:进制转换))