010-64928252 400-6446-365

北京网站建设之C程序建设相关知识

2017-04-12
  这是关于北京网站建设C程序建设相关知识的最后一部分内容,到这里分形科技就将所有关于C程序建设的知道分享给大家了。不过之C程序是一个非常广泛且复杂的技术,并不是一朝一夕就可以学会的,程序员们如果想要成为真正的、专业的程序工程师,还是需要更加深入和持久的修练才可以。

  程序员在从事北京网站建设工作时可以会遇到与网站编程语言企业软件开发品牌网站建设微商城系统开发等相关的问题,如果你无法解决,那么一定要及时的联系分形科技,这里的专家会详细的为你解答。接下来分形科技最后为大家介绍三点内容,即C程序中的循环建设问题、减少判断语句问题和查表问题。


北京网站建设之C程序建设相关知识【最后】


  9、循环建设问题

  对于C程序中的循环建设问题进行如下的介绍

  (1)循环语

  对于一些不需要循环变量参加运算的任务,可以把它们放到循环外面,这里的任务包括表达式、函数的调用、指针运算、数组访问等,应该将没有必要执行多次的操作全部集合在一起,放到一个init的初始化程序中进行。

  (2)延时函数

  C程序中常使用的延时函数均采用自加的形式:

  void delay (void)

  {

  unsigned int i;

  for (i=0;i<1000;i++)

  ;

  }

  将其改为自减延时函数:

  void delay (void)

  {

  unsigned int i;

  for (i=1000;i>0;i--)

  ;

  }

  两个函数的延时效果是相似的,但几乎所有的C编译对后一种函数生成的代码均比前一种代码少1~3个字节,因为几乎所有的MCU均有为0转移的指令,采用后一种方式能够生成这类指令。

  在使用while循环时也一样,使用自减指令控制循环会比使用自加指令控制循环生成的代码更少1~3个字母。但是在循环中有通过循环变量“i”读写数组的指令时,使用预减循环时有可能使数组超界,要引起注意。

  (3)while循环和do…while循环

  用while循环时有以下两种循环形式:

  unsigned int i;

  i=0;

  while (i<1000)

  {

  i++;

  //用户程序

  }

  或:

  unsigned int i;

  i=1000;

  do

  i--;

  //用户程序

  while (i>0);

  在这两种循环中,使用do…while循环编译后生成的代码的长度短于while循环。

  10、减少判断语句的问题

  分形科技建议程序员在C程序建设中能够使用条件编译(ifdef)的地方就使用条件编译而不使用if语句,有利于减少编译生成的代码的长度,能够不用判断语句则少用判断用语句。

  11、查表问题

  在C程序建设中一般不进行非常复杂的运算,如浮点数的乘除及开方等,以及一些复杂的数学模型的插补运算,对这些即消耗时间又消费资源的运算,应尽量使用查表的方式,并且将数据表置于程序存储区。如果直接生成所需的表比较困难,也尽量在启了,减少了程序执行过程中重复计算的工作量。  


上文接北京网站建设C程序建设相关知识【续】北京网站建设C程序建设相关知识【再续】北京网站建设C程序建设相关知识总结 

TAG标签耗时:0.010432004928589 秒
010-64928252/400-6446-365 我现在就想找顾问聊聊
让决策变的简单
好的开始是成功的一半
您需要一位互联网
顾问提供专业咨询
高端网站建设 · 小程序 · APP · 微信 · H5网站 · 电商平台建设
网络营销 · 年度运营 · H5场景 、游戏 · VR 、AR · AI人工智能