用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)

转载 2013年05月15日 21:38:00

【问题】 

用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)














【答案】

  #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL


【解析】

  我在这想看到几件事情:
  1). #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等)
  2). 懂得预处理器将为你计算常数表达式的值,因此,直接写出你是如何计算一年中有多少秒而不是计算出实际的值,是更清晰而没有代价的。
  3). 意识到这个表达式将使一个16位机的整型数溢出-因此要用到长整型符号L,告诉编译器这个常数是的长整型数。
  4). 如果你在你的表达式中用到UL(表示无符号长整型),那么你有了一个好的起点。记住,第一印象很重要。

#define中的UL

c语言 #define 中的UL U和L是 整数文字量的后缀修饰,用于显示指明整数文字量的类型为unsigned int(U)和long int(L)。    类似的还有浮点数文字量的后缀修饰F或...
  • u010979030
  • u010979030
  • 2013年08月23日 16:22
  • 935

面试:用预处理指令#define声明一个常数,用以表明1年中有多少秒(忽略闰年问题)

#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL   我在这想看到几件事情:    #define 语法的基本知识(例如:不能以分号结束,括号的使...
  • beiJiXinO
  • beiJiXinO
  • 2016年05月05日 14:10
  • 2929

C语言整形常量定义

在书中看到这样一道题目:用预处理指令#define声明一个常数,用以表明一年中有多少秒。书中给的答案是: #define SECONDS_PER_YEAR (60 * 60 * 24 * 3...
  • atleks
  • atleks
  • 2014年09月01日 19:16
  • 2180

#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL gcc编译不能通过

UL 就是unsigned long 的缩写 编译器一般会编译通过 如果不行的话那可能就是编译器不够“聪明” 因此换成 #define SECONDS_PER_YEAR (60UL *...
  • ly0303521
  • ly0303521
  • 2015年11月03日 21:37
  • 1083

(回顾经典)C语言测试

C语言测试是招聘嵌入式系统程序员过程中必须而且有效的方法。这些年,我既参加也组织了许多这种测试,在这过程中我意识到这些测试能为带面试者和被面试者提供许多有用信息,此外,撇开面试的压力不谈,这种测试也是...
  • dadunqingwa
  • dadunqingwa
  • 2005年07月30日 14:10
  • 1960

c/c++ 学习总结 初学者必备

  • 2009年09月16日 08:50
  • 50KB
  • 下载

有预处理命令#define声明一个常数,用以表明1年中有多少秒

#define SECOND_PER_YEAR(60*60*24*356)UL (1)#define 不能以分号结束,括号这使用 (2)这个表达式将使一个十六位机的整型数移出,因此要用到长整型符号L,...
  • u011046042
  • u011046042
  • 2014年10月11日 20:42
  • 1708

每日一题(27)—— define定义一个宏表明1年中有多少秒

用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) 分析: 1、#define 语法的基本知识(例如:不能以分号结束,括号的使用,等等)  2、懂得预处理器...
  • a1314521531
  • a1314521531
  • 2017年08月13日 11:16
  • 304

C语言要知道的16个问题

预处理器(Preprocessor)1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEAR (60 * 60 * 2...
  • chris81920
  • chris81920
  • 2006年12月30日 09:56
  • 662

经典笔试题目

1、   用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)     #define  SECONDS_PER_YEAR  (60 * 60 * 24 * 365)...
  • wdkirchhoff
  • wdkirchhoff
  • 2014年12月22日 22:18
  • 471
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)
举报原因:
原因补充:

(最多只允许输入30个字)