我正在阅读关于C/C++ Prototype语句的维基百科,我很困惑:
维基百科说:"通过包含函数原型,您可以通知编译器函数"fac"采用一个整数参数,并使编译器能够捕获这些类型的错误."
并使用以下作为示例:
#include <stdio.h>
/*
* If this prototype is provided, the compiler will catch the error
* in main(). If it is omitted, then the error will go unnoticed.
*/
int fac(int n); /* Prototype */
int main(void) { /* Calling function */
printf("%d\n", fac()); /* ERROR: fac is missing an argument! */
return 0;
}
int fac(int n) { /* Called function */
if (n == 0)
return 1;
else
return n * fac(n - 1); …Run Code Online (Sandbox Code Playgroud) 嗨我正在学习Python,因为语法非常简洁,习语与我的心智模型很匹配.
然而,我也有兴趣了解操作系统内部和逆向工程软件,这最终意味着以相当全面的能力了解C语言.
当我最初选择一种语言时,我做了大量的阅读和比较,而且似乎抛出了很多数字,用Python编写简短的惯用语句需要相当于几百行的C(我想是代码为内存管理,编写字典代码,列表等,我们认为这是Python语言中内置的.
1)对于一个普通的C程序员,每个Python习惯用的100-200行代码是否接近准确?
因为C不是内置的类似Python的结构,如字典/列表(所有他们的好方法等):
2)C程序员是否倾向于从头开始构建这些构造,然后在项目之间重用它们以大大减少其项目的实际手动编码量?
我假设再次使用像boost :: stuff这样的库,减少了一些样板手动编码...
3)但是,使用流行的库并重新使用之前在C语言中为基本构造/等编写的公共代码,与使用发烧友大小的代码库的Python中的代码相比,修改用C编写的代码行有多少?
我知道具体的数字是不可能的,但是有可能使用库,代码重用等,使用C的开发时间接近Python的开发时间而不是Linus Torvalds风格的编码机吗?
谢谢!