C入门

awe*_*son 7 c

我知道有许多教程可以在C开始.但是我很难应用这些知识.我一直以语言开始的方式是编写脚本.当然C不是脚本语言.

我的问题不在于学习C,而在于如何开始应用C.我可以写一个温度转换器或基于文本的RPG.也许是因为在python中我只是在somefile.py和chmod + x somefile.py && somefile.py中编写代码.我真的没有C的等效过程.每次我读到C时,它都是一个不同的标记的不同编译过程.当你已经使用更高级别的动态脚本语言时,有人可以给我一些关于应用C的最佳方法的明确方向吗?

顺便说一句...我问的是C而不是C++.

我通常使用的是OpenSuse 11或Ubuntu 9.04."我使用什么编译器"是问题的一部分.在python中,没有选择它只是"python somefile.py"与php或ruby相同.我不知道有选择.

Dav*_*d Z 5

正如 rogeriopvl 在评论中所写,编译过程非常简单。只需在 somefile.c 中编写代码即可

gcc -o somefile somefile.c && ./somefile
Run Code Online (Sandbox Code Playgroud)

(如果您正在使用 GCC,如果没有,您选择的编译器可能会被类似地调用)除非/直到您开始进入更复杂的项目,它几乎不比脚本语言更复杂。(好吧......好吧,一旦你超越了基础知识,你可能需要链接一些库。但仍然没什么大不了的。)

事实上,我确实给自己写了一个小 shell 脚本,它允许我使用 C 作为脚本语言。但设置它的过程比您现阶段可能想要进入的过程稍微复杂一些 - 每次运行编译器会更简单。不过,如果您有兴趣,我可以查找说明(针对 Linux)并将其放在这里。

  • 更好的是,如果您的程序不需要任何外部库或特殊标志(如果您刚刚开始,很有可能不需要),您可以在命令行中编写“make somefile”,然后编写“make”即使您没有“Makefile”,隐式规则也会为您调用“cc -o somefile somefile.c”。 (2认同)

ags*_*mek 5

写wc

#include <stdio.h>

int main(int argc, char *argv[]) {
    int i;
    for (i = 0; i < argc; ++i) {
        printf("Param %d is '%s'\n", i, argv[i]);
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

并编译

gcc -Wall -o w w.c
Run Code Online (Sandbox Code Playgroud)

./w
Run Code Online (Sandbox Code Playgroud)

  • 为-Wall +1.我还要添加-Wextra和-std = c99. (2认同)