怎么通过 VS2019 看 strlen()的源码?

2022-01-01 17:09:22 +08:00
 amiwrong123

vs 工程里,写了这么一句strlen("123");,然后我按住 ctrl ,点 strlen 进去,是这个样子: 如上图,我依次点击 strlen ,_In_z_,_SAL2_Source_,_SA_annotes3 到最后这个_SA_annotes3 这个宏定义,我就懵了,它还有三种宏定义。

而且这个过程,宏定义又包含宏定义的,太复杂了吧,我只是想看一下 strlen 的实现而已。( PS:突然怀念起以前看 java 源码的日子)

所以我这么看源码是对的吗?还是说,我不应该在 VS 里面看 C 的源码阿?(可能以后还想看一下 c++库,比如 vector 的实现)

3893 次点击
所在节点    程序员
22 条回复
ipwx
2022-01-03 17:15:59 +08:00
@amiwrong123 你放心,C++ 世界里,越是基础的东西,魔法优化越多。

一个 std::vector 也可能有各种你看不明白的五花八门的魔法用法。建议你别看了,自己想想该怎么写就够了。
agagega
2022-01-13 00:05:54 +08:00
常见的 C 库如 Glibc 、Musl 、FreeBSD 的 libc 还有未完工的 LLVM libc 都是开源的,可以去看它们的实现

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

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

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

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

© 2021 V2EX