C 语言这种看起来是强类型,但指针指来指去后写起来感觉是弱类型

2018-08-28 09:56:16 +08:00
 nilrust

变量一律用指针,一路无脑calloc,贼爽!

6377 次点击
所在节点    程序员
41 条回复
SuperMild
2018-08-28 12:08:27 +08:00
C 语言是现存主流语言中为数不多的典型弱类型语言了。注意,JS、Py 之类的,是动态类型,不是弱类型。JS 可以隐性转换,但转换规则非常明确。
vincenteof
2018-08-28 14:35:27 +08:00
类型最大的意义是让问题在编译器期就暴露出来而不是运行的时候,你这种写起来虽然爽,出错了 debug 的时候就痛苦了
woshiyigeren002
2018-08-28 14:39:32 +08:00
@baicheng10 图挂了
jmc891205
2018-08-28 15:54:26 +08:00
不要乱转类型就好了。。。
songtianyi
2018-08-28 18:01:55 +08:00
好像很多人搞不清不同地方说的弱类型是什么意思,其实是翻译的锅
建议用英文写法来沟通,weekly checked,即部分人所说的弱类型,指的是类型系统在做检查的时候 没有尽可能消除潜在的错误,比如 c 语言允许指针运算。英文当中也有人用 weekly typed,所以翻译过来是弱类型,很多人把它和类型是否可变混淆了。与之相对的是 strongly typed
weekly typed,类型可变,一般动态语言都是。与之相对的是 strongly typed。
songtianyi
2018-08-28 18:03:33 +08:00
msg7086
2018-08-28 18:05:34 +08:00
@songtianyi 并不是每星期类型……
songtianyi
2018-08-28 18:07:47 +08:00
@msg7086 哈?
edussx
2018-08-28 18:26:01 +08:00
请分清:
动态类型 vs 静态类型
强类型 vs 弱类型

这两组概念,C/C++是典型的静态弱类型语言
oswuhan
2018-08-28 18:43:55 +08:00
@songtianyi week ( weak )
PythonAnswer
2018-08-28 19:23:35 +08:00
图上动态语言 一半强类型 一半弱类型啊
marcushbs
2018-08-28 19:42:49 +08:00
只要隐性 cast 之后挂了,就是强类型,谁用谁知道
songtianyi
2018-08-28 20:17:28 +08:00
@oswuhan 别说了,这个我老手误写错。。
kzzhr
2018-08-28 20:50:49 +08:00
看了 go 之后,看谁都是贼爽的弱类型
mingyun
2018-08-28 23:08:53 +08:00
@baicheng10 怎么木有 golang
greatbody
2018-08-29 00:26:40 +08:00
VB 不是弱类型
wweir
2018-08-29 08:03:45 +08:00
静态类型,弱类型
NoDocCat
2018-08-29 10:08:32 +08:00
@yulitian888 kpi 这不就上来了吗?(逃
liuzhedash
2018-08-29 10:36:19 +08:00
C 语言是典型的:严格立法、普遍违法、选择执法。
deweixu
2018-08-29 11:24:47 +08:00
指针直接操作内存了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/483850

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX