Manfred Hu的技术博客 http://www.cnblogs.com/manfredHu/ Stay hungry,stay foolish.Keep looking,don't settle.

C语言,C#,Java,JavaScript之强类型与弱类型

奇葩的我今天想到一个坑爹的问题,都说Java是强类型的语言,JavaScript是弱类型的语言。

嗯嗯,那初学时候的C语言呢?

呵呵哒,突然觉得短路了。说Java是强类型的语言是因为遇到这样的情况:

int a=1;
if(a){
}

这样写肯定报错在JAVA中,它会提示要boolean型。C#一样的,C#跟Java是同个妈生的!90%覆盖

嗯嗯,继续下面的讨论,JS是弱类型的在我以前的印象是这样的:

var a=1if(a){
}

然后突然发现(想起),在C语言中:

int a=1;
if(a){
}

凌乱了,自己的坑爹想法真是奇葩,估计这个问题没有人想起吧?

然后自行百度:C语言是强类型还是弱类型?

网上说法不一。在此不枚举!

有大大说:强类型是指给定变量后类型不能转化,那C语言的int转char那些什么鬼呢?


个人理解:强类型是对编码的规范化而定制的标准,有利于程序员养成良好的变成习惯。而弱类型则对这方面没有严格要求。所以,去TMD强类型弱类型。能编出好程序才是好类型!

编程语言专家 Benjamin C. Pierce,Types and Programming Languages》和《Advanced Types and Programming Languages》的作者,曾说:我花了几个星期…试着弄清楚“強类型”、“静态类型”、“安全”等术语,但我发现这异常的困难…这些术语的用法不尽相同,所以也就近乎无用。

 

posted @ 2015-05-17 22:49  manfredHu  阅读(2027)  评论(0编辑  收藏  举报
推荐
返回顶部