• 从头学起Expert C Program 1


    C语言多么久远的语言,离我们又这么近,它的存在时间之长,让人不得不重新认识它,一个语法灵活,编程自由的语言,而且有着高效率,怎能不让我们不断去探索它呢。苹果之父的离世,让人们对乔布斯更加的崇拜了,但是在计算机语言的世界中,丹尼斯里奇的离世才是值得编程人们感到非常痛心的。下面简单介绍下C语言之父——丹尼斯里奇。


    丹尼斯·麦卡利斯泰尔·里奇Dennis MacAlistair Ritchie,1941年9月9日-2011年10月12日[3]),著名的美国计算机科学家,对C语言和其他编程语言、MulticsUnix等操作系统的发展做出了巨大贡献。

    里奇在哈佛大学学习物理学应用数学,毕业后于1967年进入贝尔实验室工作,他亦曾是朗讯技术公司系统软件研究部门的领导人(2007年退休)。1983年他与肯·汤普逊一起获得了图灵奖,获奖理由是他们“研究发展了通用的操作系统理论,尤其是实现了UNIX操作系统”。1999年两人因开发C语言和Unix操作系统一起获得了美国国家技术奖章

    好了,不多说了,现在开始学习Expert C Program。从我们开始学习事物开始,都是通过例子来学习的,因为例子能够给我们深刻的感官认识,举一反三,就是通过例子来实现的。if(i=3)和if(i==3)是我们初学c语言时经常犯的错误,为什么这样的错误总是不停地出现呢,其实我们只要掌握了方法,这种问题只会错一遍,以后决不会再出现,为什么干这么肯定的说,因为只要我们把上面的式子改写一下if(3==i)这样的话,即使我们少写了一个=。不用我们自己发现,编译器就会帮我们发现了,所以以后遇到错误的时候一定要想想为什么自己会出错,怎么才能让自己更真实的去体会到本质。


    接下来,书中介绍了time_t这个结构体,怎样得到系统支持的最大时间。

    #include <stdio.h>  
    #include <time.h>  
     
    int main() { 
     time_t biggest = 0x7FFFFFFF;  
     
     printf("biggest = %s \n", ctime(&biggest) );  
     return 0;  


    biggest = Mon Jan 18 19:14:07 2038 

    这就是 得到最大时间的方法。但是不同地点的人们的得到的确有时间差,这就是时区问题。


     
    #include <stdio.h>  
    #include <time.h>  
     
    int main() { 
      time_t biggest = 0x7FFFFFFF;   
     
      printf("biggest = %s \n", asctime(gmtime(&biggest)) ); 
      return 0;  

    This gives a result of:  
     
    biggest = Tue Jan 19 03:14:07 2038 

    通过 gmtime这个函数就能够把日期和时间转换为格林威治(GMT)时间的函数asctime把日期转换成字符串。这样大家都得到相同的格林威治时间了。


    c语言 命名也很讲究,当我们写小程序时,我们习惯用fruits做变量名,这样更能体现关键字,我们也能够很好滴理解变量,2个水果就可以来相互比较。


    第一次 ,就写这么多了,以后再增加更多的后续篇章。

  • 相关阅读:
    2017 ACM/ICPC Asia Regional Qingdao Online
    2017 ACM/ICPC Asia Regional Qingdao Online
    2017 ACM-ICPC 亚洲区(西安赛区)网络赛 Sum
    2017 ACM/ICPC Asia Regional Shenyang Online array array array
    无权最短路
    解题报告:poj 3070
    矩阵学习笔记
    拓扑排序
    LIS严格递增和非递减模板
    2017 ACM-ICPC 亚洲区(乌鲁木齐赛区)网络赛-A banana·
  • 原文地址:https://www.cnblogs.com/itdreamfly/p/12871726.html
Copyright © 2020-2023  润新知