zhicheng's recent timeline updates
zhicheng

zhicheng

V2EX member #14055, joined on 2011-11-28 13:16:44 +08:00
Per zhicheng's settings, the topics list is hidden
Deals info, including closed deals, is not hidden
zhicheng's recent replies
Aug 29, 2022
Replied to a topic by 52coder 程序员 被初中生 C 语言考住了,尴了个尬
@52coder 不太理解这种不会又要硬凹的心理。bool 没有规定就是一个字节,memset 初始化一个字节的数组也不是 trick 。
Aug 28, 2022
Replied to a topic by 52coder 程序员 被初中生 C 语言考住了,尴了个尬
“c 指定非 0 值还要 memset(arr,-1,sizeof(int)*10)大概这种。”
不会写 C 说不会就好,没必要假装。
如果想从头到尾了解一下一个编程语言是如何工作的话可以了解一下我写的 http://www.lemon-lang.org/ 标准 C 实现,核心无外部依赖。

代码 https://github.com/lemon-lang/lemon

如果有什么问题或想法也可以找我讨论。
“ 640K 内存对任何人来说都足够了”
Nov 2, 2018
Replied to a topic by absente 程序员 我就知道很多人会黑中文编程
说得轻巧,代码拿来看看?
不反对你在自己的项目里用汉语日语韩语法语德语意大利语编程。但想要获得关注和反驳无用论,拿出东西来堵住他们的嘴啊。
既然目标是 C 语言,请不要拿 APL 这种理论型的东西来讲。真正能在工业中使用的,是能够降低人的心智负担的,这也是为什么 APL 这种东西看起来美好,实质无用的原因。
对于数学符号,问题的关键也不是好不好看,而是统一,你写一个公式别人能看得懂。
对于楼主,我看到的是一个人看了几篇 APL 的文章,仿佛找到了新世界的大门,兴奋不已要嚷嚷着要用 APL 改变世界。

这样的见得多了。
@wizardforcel 刚好相反,高级工程师根本就不会关心 UB 会产生什么样的行为,因为无论它产生什么样的行为,都是错的,哪怕程序看起来正确。

你知道 UB 会产生什么样的行为能避免被黑?程序能更安全?不,能让程序更安全的是从一开始就尽量避免引入 UB。

没有什么实现是完全正确的,但你明显不能往肯定错误的方向走啊。
@zmj1316 你说的那不是废话吗?用了 UB 基本上都是要出 Bug 的,大部分 Bug 也是由 UB 引起的,是我语文没学好,还是你逻辑没学好?还是知道 UB 会出现 Bug 是件很牛逼的事?
@zmj1316 工作这么多年,头一回听说用 Ub 的行为来 debug,你知道 ub 这是哪两个词的缩写?调试内存问题,你可以用 valgrind 可以用 addresssanitizer,能通过 ub 的行为来定位 bug ?我猜你是神。
因为你的代码本来就是错的,你在为错的代码强行找原因,你今天的 glibc 版本是这个行为,下一个可能是另一个行为,甚至不同的编译参数产生的行为也不一样。你要讨论 glibc 和 linux 就直接讨论,出个错的题目要“考”一下别人也是有趣。

如同法律上写了红灯不要过马路,你非要去讨论什么样的情况下红灯可以过马路,抱歉我理解不了这种行为。
About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3106 Online   Highest 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 12ms · UTC 00:33 · PVG 08:33 · LAX 17:33 · JFK 20:33
♥ Do have faith in what you're doing.