2013-06-25 49 views
14

定义变量为staticlong/double或其他类型时是否有任何偏好/约定/规则?定义类型的顺序

例如是

static double a; 

相同

double static a; 

是它功能的任何不同?以上,a是可变的。

+7

它们的意思是相同的事情。第一个版本更加常见(以我的经验)。但最终这只是一个风格问题。 –

+0

是一样的,但'双静态a'给出'警告:'静态'不是在声明开始[-Wold-style-declaration]'与'-W'标志在 –

+0

没有。你只需要最后一个变量名。与签名/未签名相同,您可以按任意顺序放置它们。今天或昨天早些时候有一个问题在这里有很好的回应。在这里:http://stackoverflow.com/questions/17287957/is-long-unsigned-as-valid-as-unsigned-long-in-c – enhzflep

回答

21

它们是等价的,但最好是static

(C99,6.11.5p1)“的存储类说明 比在声明说明符的开始等在 声明的位置是一个过时的功能”