MacmacOSXcodeC(编程语言)C / C++

如何在 mac 电脑上写 C?

问题描述

我是大一新生,刚学 C 语言,想运行一下自己写的 C,用的 Xcode,但是跟学校里电脑操作不一样,请问还有什么更好的软件吗?

地铁风
不会撸程序的设计狮不是好科研狗

简直了⋯⋯ 为了写一个十行的 C 程序,居然动用 Xcode,还建工程⋯⋯ 有你打开 Xcode 的时间我都用 TextEdit 写好在 Terminal 里编译完了⋯⋯

题主你听我的,你的需求,根本没必要用 IDE,用 TextEdit 和命令行方便得多⋯⋯ 来,天天跟我做,每天五分钟(<--- 暴露年龄)。

  1. 打开 Terminal。你是纯小白,不会?按键盘你会吧?这两个键一块按

屏幕上会出现一个框,在里面输入 Terminal,会变成这样

如果不是这样你就按下箭头直到选中一个图标和这个一样的东西为止。这时你按下回车,屏幕上会出现一个白窗口里面有一些奇怪的字,那就是 Terminal

2. 在 Terminal 里输入下面这个然后回车。

xcode-select --install 

然后跟着提示走就好。这样你就装好了 C 编译器。

3. 然后你就可以开始写程序了。先在随便一个地方创建一个目录,创建目录你会吧?然后在 Terminal 里打入 “cd” 这两个字母,然后按一下空格,别按回车。接着把你刚创建的目录拖到 Terminal 的窗口里,最后在 Terminal 里按下回车。

太复杂了?有视频。

https://www.zhihu.com/video/1055728265662205952

你的 Terminal 跟我的不太一样,没关系,步骤是完全一样的。

4. 打开 TextEdit,也就是记事本。这个你会吧⋯⋯?不会的话方法和你打开 Terminal 是一样的。然后在里面写你的 C 程序。写好了以后保存到你刚创建的那个目录里。这个你会吧?我实在是懒得录视频了⋯⋯ 现在我假设你存成了 test.c 这个文件名。

在 TextEdit 这里有个小坑,如果你的 TextEdit 窗口是这样的:

你要按一下这个菜单,

把 TextEdit 窗口变成这样:

此处模拟学习某本 C 教材的过程

5. 回到 Terminal 窗口,输入

cc test.c

然后回车。这样你的 C 程序就编译完了。想运行刚编译的程序可以输入

./a.out

然后回车。

然后就完了。就这么简单,我也想不出比这个更简单的事了,反正比创建那个什么 Xcode 工程简单多了⋯⋯

如果这些你都不能完成的话,请去附近的老年大学进修。

如果你完成了的话,有很多好玩的事可以做。比如把 TextEdit 换成一个正经的代码编辑器,比如 VSCode。如果你想挑战手指灵活性的话可以换成 Vim 或者 Emacs⋯⋯

很久以后的更新:完整过程视频

两次作业的示范 https://www.zhihu.com/video/1165293546462007296

我简单看了一下评论⋯⋯

有人说我不友善?喵喵喵?不是很明白。我觉得想更友善就只能飞过去手把手了……

有人说秀操作?装逼?How??? 我当年从 Ubuntu 4 就开始用 *NIX 了,我有 120KB 的 Emacs 配置,全是我自己写的。我用 TextEdit 和 cd 装逼⋯⋯?

有人说误导新手?喵喵喵?我想误导的话会直接让题主用 Emacs 的⋯⋯ 唯一有可能误导的情况是题主用的中文界面,那⋯⋯ 我也没办法,我不知道这些程序的中文名字叫什么,欢迎在评论指出。


我觉得有必要解释一下为什么推荐 TextEdit。这个问题其实是两个问题:

  • 为什么不推荐 Xcode?IDE 隐藏了关于工具链的细节,但是却凭空增加了太多其他的细节。比如「工程」,目录下的各种奇怪文件,创建工程时的各种选项,各种不同的 build 类型,等等。我觉得对于题主的需求来说这个交换是不值的。至于 IDE 提供的各种编辑时的方便,只有当项目中函数和类很多时才有用,对题主来说,打 “pr” 补全成 “printf” 真不能算什么了不得的功能,初学 C 能用到的函数就那么几个⋯⋯ 另外你想一下,如果小白题主想把自己的程序拷给同学,他能否正确地找出应该拷哪个文件?能否正确的在 Finder 里找到这个文件?如果同学想把自己的程序拷给他,他能否正确地把文件添加到工程里并且正确地 build?
  • 为什么不直接上 Sublime、VS Code、Atom(还有 Xcode)⋯⋯ 很简单,因为要下载。下载对于一个小白用户来说可能是极大的挑战。不要说小白了,对于你们这些囧乎人赢来说可能都是。还记得 2015 年的 XcodeGhost 么?不要好了伤疤忘了痛。不信你可以用你的爷爷奶奶测试一下,让他们尝试下载一个叫做「Sublime 编辑器」的东西,你看他们最后会给你下载个啥。而 TextEdit 的好处就是系统自带,不需要下载任何东西。

评论区挺能联想⋯⋯ 我没有说要题主学命令行、bash、Linux,没有任何这个意思。按 "c", "d" 和空格三下键盘很难么?

608 赞同 143 感谢 835 收藏 294 条已备份评论 发布于 2018-12-10 知乎原页 ↗

评论 294

用记事本写程序太不爽了……起码弄一个关键字会变色的。
9 赞
觉得答主这个回答,根本没有帮助出题人的诚意,反而像是在新手面前的秀优越感和劝退。写十行代码不用xcode。题主就一辈子写10行代码?或是说等写100行1000行再换xcode?那既然如此,那为何不直接就用Xcode? 你这个回答意义何在?
324 赞
猪骑士回复 JhxHx

本质上Xcode并不适合码C。Unix的atomic 思想让vim 甚至是emacs 这种编辑器写C是毫无问题的。GNU Linux就是在vi/emacs 上编出来的,不要看不起编辑器。我问你GNU Linux有过少行?为啥写100行1000行就必须换xcode或者M$的内存爆破器?

12 赞
JhxHx回复 猪骑士
写C有没有问题,和体验好不好,完全两码事,gun linux拿什么东西写出来的关题主写代码用什么更方便更轻松什么事。这就叫看不起编辑器了?当年土共还小米加步枪打赢了老蒋呢,现在就不要飞机大炮了?
1 赞
地铁风回复 JhxHx作者

我都说了,进阶可以换 VS Code, Vim 和 Emacs.

13 赞
N0N4O4回复 地铁风
其实可以直接用vim,macOS本来就自带了vim.还可以,顺便练练手指。
2 赞
地铁风回复 JhxHx作者热评

这就好像你想做小葱拌豆腐,你需要全套厨具么?你只需要一个案板一个刀。你把全套厨具准备好的功夫我都做好十盘小葱拌豆腐了。你想做满汉全席的时候再准备厨具不迟。


写十行程序和写 1000 行程序用不同的工具,很奇怪么?我想写简单 test 程序的时候都只用 cat.

56 赞
fuxiao回复 地铁风

心疼大猪,明明为大一新生提了个最容易入门的建议却被强制“秀优越”

[安慰]
3 赞
知乎用户b3qP5q回复 地铁风
你以为的操作:嗯,很少,不需要安装->简单;但对于小白:直观->简单。明明用VSCode+编译器/直接上IDE就可以解决的事情,非要给你整出一发记事本编程,对于纯小白,没有视觉交互,需要使用CLI,还要接受形如这样的嘲讽“然后就完了。就这么简单,我也想不出比这个更简单的事了,反正比创建那个什么 Xcode 工程简单多了⋯⋯“,能不能不要主观臆断?[好奇]
0 赞
地铁风回复 知乎用户b3qP5q作者
你找个纯小白测试一下就知道了,能不能不要主观臆断?[好奇]
0 赞
201724回复 地铁风
ide有完整的语义分析和代码提示,记事本有什么?而xcode/vs只需要新建 编译就可以了 内存值几个钱?你就是纯误导新手,有飞机大炮不用,用木棍吗?
0 赞
知乎用户b3qP5q回复 地铁风
笑死,纯小白在快乐地用着devc, vscode, vs community, clion不亦乐乎
0 赞
地铁风回复 知乎用户b3qP5q作者
笑死,纯小白在快乐地用着记事本命令行不亦乐乎
0 赞
地铁风回复 JhxHx作者

另外完全不知道你说的「秀优越感和劝退」是从何而来。你知道怎么启动 Terminal,并不代表题主知道。你知道 rich text 和 plain text 的区别,并不代表题主知道。也许你没见过纯小白,但是我见过。

29 赞
Tomcattiger回复 JhxHx
答主秀不秀我不知道,不够我觉得用OSX不见得需要用到Xcode。大部分在Mac环境下写c的人应该也不会用Xcode吧
10 赞
JhxHx回复 Tomcattiger
你为什么觉得不会用xcode,xcode是不好用不好看还是收钱?
0 赞
Tomcattiger回复 JhxHx
xcode是免费的。 但是对于和osx或是ios无关的开发 这个ide功能比较多余和过于冗杂了。
1 赞
randC0deGen回复 JhxHx
大一新生呀,代码行数不多的,单文件够用一个学期了。而且趁入门的机会了解下IDE背后的一点知识也未尝不可呀。
2 赞
南风咖啡达也酱回复 randC0deGen
那么问题来了,编译通不过的时候,新手该怎么解决问题?是ide在写代码的时候就把语法问题全排除了好还是新手手动编译的时候四面抓瞎好?
1 赞
randC0deGen回复 南风咖啡达也酱
然而用ide并不能解决新手不会看error和warning的问题,这个新手总是需要学。学会了用不用ide问题都不大。而且我说是写几十行短代码的时候,错误信息能有多少?除非用mingw写stl写出锅就当我没说。
0 赞
南风咖啡达也酱回复 randC0deGen
ide能提高新手发现问题的效率并且引导修复问题
0 赞
碧水溪风回复 randC0deGen
背后的知识难道不是编译原理,操作系统原理吗?会写make就是了解ide背后的知识了?
0 赞
知乎用户X4hPdo回复 JhxHx
初学者不要过早碰ide,大概到需要做一个项目的时候就可以碰了。
2 赞
江一村码农回复 JhxHx

杠上开花了都。你吃四个包子饱了,为什么不直接吃第四个?

8 赞
JhxHx回复 江一村码农
你这个例子才是杠上开花,难道这里不能直接吃第四个?
1 赞
江一村码农回复 JhxHx

当然可以吃啦,问题能饱么,哈哈哈

1 赞
程序狗Yao回复 JhxHx
老哥,xcode真的很烂,做开发的没一个不喷这个的,我要是能脱离这个工具链,早就跑了
0 赞
F-Hreinskilin回复 程序狗Yao

现在xcode也不烂了,应该是你用不好。

0 赞
程序狗Yao回复 F-Hreinskilin
试试在8或者9上面写写swift?[衰]
0 赞
程序狗Yao回复 F-Hreinskilin
[飙泪笑]哥,看啥时候评论的…烂的时候你没用过
0 赞
UncleM回复 JhxHx
个人认为答主这种写代码的方法更适合新人,新人一上来就用IDE,会导致很多很必要的知识被跳过了
0 赞
真皮铁头娃回复 JhxHx
太能杠了,听你说这一堆就能看出来你没写过多少代码 还挺爱装b的,我认识的人刚学c全部在textedit里面写 直接在terminal跑,上了个培训班就出来高谈阔论了?
0 赞
JhxHx回复 真皮铁头娃
那敢问你和你认识的人用textedit写出来了什么高级代码,不妨放出来让大家见识见识
0 赞
真皮铁头娃回复 JhxHx
敢问你写过什么高级代码?我们写的代码不算高级,只不过是大学教授布置的assignment
0 赞
真皮铁头娃回复 JhxHx
还继续杠?我写个assignment需要打开ide建立项目吗?开始扯到高级代码?我们教授都是博士级别的 教书用的案例都是textedit写的,感情你比我们教授更懂啊,你哪个名校毕业的呢 哪个公司的核心开发人员呢?
0 赞
知乎用户JDg4J1回复 真皮铁头娃
那只能说明要不然你的技术顶尖,要不然你学校太水。至少上千行的代码用textedit?找错都够头疼的。
0 赞
真皮铁头娃回复 JhxHx
想问问你上的哪个培训班 还高级代码?我简直被吓尿了
0 赞
BouncyElf回复 JhxHx
这么良心的教程被你说成这样?其心可诛啊。
5 赞
知乎用户Ts3KEJ回复 JhxHx
知乎为什么多了像你一样的杠精啊[撇嘴]
4 赞
Fanhe回复 JhxHx
新手就应该只用文本编辑器编辑单文件源码,然后命令行编译
0 赞
木木叶凋回复 JhxHx
作为一个往这方面发展的同学表示答主说的其实很有帮助
0 赞
ffashion回复 JhxHx
你能理解文章意思吗 不理解在看一遍 再不行 再去看一遍 。要是还不行 去吧。
1 赞
不期而遇回复 JhxHx
也没有吧,一开始用简单编辑器,命令行编译,更容易弄懂整个工具链,每一步都很清晰,更容易深刻理解,刚开始学习都是一小片段一小片段的代码,不管是用xcode还是vs都很不方便
1 赞
grhsvh回复 JhxHx
如果觉得这样都秀,实属没有适应环境的能力。
1 赞
JhxHx回复 grhsvh
不提适应不适应,有什么必要去适应?所以万一以后青藏高原成了开发区,现在是不是应该憋气写代码
0 赞
grhsvh回复 JhxHx
既然用mac写代码,不会用最简洁的方式写,那么就是不适应环境。
0 赞
JhxHx回复 grhsvh
你管这么长的答案叫简洁。这答案还不包含可能遇到的坑。
0 赞
grhsvh回复 JhxHx
你看懂这个回答了吗?如果你看懂了并且觉得不够简洁,那么请说一下有什么比这个更简洁的方法。
0 赞
grhsvh回复 JhxHx
你注意一下。除了后半段对于评论的回复,前半段去掉图之后,内容多吗?
0 赞
JhxHx回复 grhsvh
去Apple Store下一个Xcode 然后一直点下一步新建一个项目 写完后点一下三角号。学习成本:0
0 赞
Jacky Zhen回复 JhxHx
请你找一个中文版的Xcode
你觉得大一新生看得懂英文版?
0 赞
Sakura回复 JhxHx
说的太对了,给别人秀优越的感觉太强了
1 赞
freekey回复 JhxHx
我倒觉得这是个很棒的回答
0 赞
JhxHx回复 freekey
从工作量上来讲,或者从某些已经入门的人的角度来说是个好回答,但是对新手来讲我觉得不算。
0 赞
CarzyZY回复 JhxHx
我也觉得,后面更秀,生怕不知道这个操作对自己多简单
0 赞
当初就记着一个口诀,gcc 点杠a点out[飙泪笑][飙泪笑][飙泪笑]
5 赞

像楼主这样,打开textedit,写代码,保存,打开terminal, 编译的时间,如果一个人还没打开一个xcode, 才真正应该去老年大学进修了

50 赞
地铁风回复 Seamas Wang作者

我去年刚换本。以前的本是 2011 MBP,启动 Xcode 大概要十分钟。

6 赞
zlrs回复 Seamas Wang
不写工程没必要用IDE
10 赞
想环游世界的小唐回复 zlrs
用Xcode更加省时省力那为什么不用 不差那点空间
1 赞
ffashion回复 Seamas Wang
打开普通的文件编辑器(直接编写) 和一个terminal(一条命令 编译)。你建造工程 得几步???
0 赞
厉害,如此认真,授人以渔
1 赞
SuperLucky回复 Crane

答主觉得自己在授人以渔其实还是喂饭,只不过答主这属于前空翻540度倒立喂饭,看客觉得有热闹看,对吃饭的人来说可能还不如普通喂饭。

2 赞

哈哈哈,那本教材这是,这么友善!!!😂😂😂

1 赞

这样对新手有帮助吗?

5 赞
fuxiao回复 玉米

实话跟你说,新手就该这么做,入门真没必要折腾工具链

7 赞
玉米回复 fuxiao
难道新手不该用开箱即用的工具吗?一开始把重点放到折腾这些环境上面?
1 赞
想环游世界的小唐回复 西欧帝
所以直接一键装一个xcode 解决一切问题 学的是c语言而不是软件用法 我们教授用codeblock教的在Xcode上一样写 好的老师看程序内容不是看你终端的运行截图 说xc大的硬盘是有多小 三秒启动比你打一大堆命令快多了
2 赞
西欧帝回复 玉米
而且都没让你用cd 用touch,给的解答都是gui,和少数给全的命令行,这有任何难度吗
0 赞
fuxiao回复 玉米

封装的越简单,帮你做的事情越多,使用过程中给你造成困扰的东西就会让你越迷糊。如果装个依赖,写几句cd,用个TextEdit您认为算是折腾环境。。。也太...

1 赞
想环游世界的小唐回复 fuxiao
所以Xcode一键安装不是更省力?
1 赞
fuxiao回复 想环游世界的小唐

复杂的是工具的使用成本,您不会觉得编码过程中使用xcode 就是点点那几个按钮吧

0 赞
说话阴阳怪气的,一看就知道不是什么好鸟🐤。
19 赞
知乎用户3l0lqG
新手怕是连cd是什么都不知道呢吧...直接上来秀一脸反而起到劝退的效果 友善度+1
13 赞
装B的 没什么技术 不值得在知乎上炫耀
7 赞
memset0回复 xiao liu
难道有人提个小白问题非要拿高端技术炫耀一番才能在逼乎回答问题了?
2 赞

Xcode应该算是最好看的c/c++ editor了,用惯了再用其他的根本不习惯,怎么看怎么别扭

4 赞
知乎用户mkwD7r
不会的请移步中国大学mooc翁凯老师的c语言程序设计教程
另外在用vs code加一个插件一键运行吧,现在问的这个问题太垃圾了
0 赞
知乎用户mpKusn
VSCode吧(虽然我更喜欢Atom 奈何性能[捂脸])
0 赞
知乎用户xTkQvI
vim是最不需要手指灵活的了吧… 反而是最适合我这种懒得移动双手位置的
1 赞
有时候只是想写个小程序测试一下。感谢答主
1 赞
是一只熊猫回复 Genz
相信我,你装了xcode的话小程序也是xcode更快。建个tem项目存着。要写点什么直接command+o打开tem,写完command+r。写的效率比text高,compile也更快。
1 赞
答主的方法已经足够小白把primer c里面的所有实例跑一遍了。如果小白真的把primer c里的实例全搞定,就已经比一些只会Xcode的人强不少了。
7 赞
反对。
无论是搞开发还是搞教学,我都建议使用成熟的IDE。原因很简单:debug。学习gdb不是成本?难道一辈子暴力调试?越是小白,越要从简单的东西学起。
再说学习成本,我从命令行教,绝对路径相对路径要讲吧,ls mv cp rm mkdir等等要讲吧,稍微深一点,管道,重定向,grep,用户权限,shell脚本,chmod……等你这一套下来了,我用IDE学的运算符都上完了。
小白是来学C的,不是来学命令行的。
在mac上教C,直接上Xcode是首选,毕竟点两下等一会就好了,你这一套,是在Linux下教C的,不适合mac。
8 赞
地铁风回复 Clairad作者

教命令行干嘛⋯⋯

另外就大学里教的那点 C,根本就用不着 debugger。而且在我的经验里,学术圈编程,不能用 debugger 的情形居多,除非你愿意 ssh 过去跑一个裸的 gdb⋯⋯

1 赞
Chant Zine回复 地铁风

真的,一直是裸一个gdb,挺好的。

ide强加给人的东西太多了,真的不一定能提高工作效率,尤其是自己小的toy program,toy project。

1 赞
地铁风回复 Chant Zine作者

膜一个,我只在迫不得已的时候才裸 gdb,一般就直接 printf 了⋯⋯

4 赞
真是看不下去,一个正儿八经的回答被说成是秀? 知乎不是码农社区吗?这到底哪里秀了?
14 赞
nano/vim file.c
Write code
Command+x y enter
gcc/g++ file.c -o file
./file
3 赞
我爱喝热水
根据你打来xcode的时间我断定应该是05年以前的型号
1 赞
地铁风回复 我爱喝热水作者
??
0 赞
我爱喝热水回复 地铁风
有你打开 Xcode 的时间我都用 TextEdit 写好在 Terminal 里编译完了⋯⋯您电脑响应速度够慢的
0 赞
地铁风回复 我爱喝热水作者
我之前有个 2011 mbp 就这么慢啊
0 赞
想环游世界的小唐回复 地铁风
知不知道2017的macbookpro Xcode打开建project加起来只要10秒
2 赞
地铁风回复 想环游世界的小唐作者
那打开记事本需要几秒?
0 赞
想环游世界的小唐回复 地铁风
你不要开编译器?不用敲指令?mac端安装东西简单到不能再简单
2 赞
N0N4O4回复 我爱喝热水
其实都不用打开记事本。全程终端就行了。macOS自带vim.更没什么安装成本。
2 赞
我爱喝热水回复 N0N4O4
随便您玩出花来 我就点下图标cmd+r
0 赞
可曾记得爱

天天跟我做每天5分钟的那位好像已经挂了。。。所以还要不要跟她做是个问题。。

0 赞
纯小白一只~~~我觉得作者的回答没毛病吖,知乎的回答不仅给提问者看也给其他遇到类似问题的人看吖,怎么能保证这些人当中没有小白?怎么就成“秀优越感”了。。作者大大你很好,不要听别人胡说,他们只知道键盘一敲,看见小白提问大多直接不理会,好点的会跟你讲“最讨厌伸手党”。。
4 赞
🤣🤣🤣 前面那段话 让我想起 黑vs的
你打开vs的那段时间。我已经写好代码了

毕竟有些人。只会 hello world🌸🐔
0 赞
写代码要是基本命令行和文本编辑器都不会用就别写了,上来就ide的才是误导
0 赞
知乎用户X4hPdo回复 JeffDACU710
赞同,这个回答下一堆阴阳怪气的评论, 码农都知道ide的劣势在哪里,答主给的解决方案对于大一新生来说绝对是一个正确的方法
0 赞
知乎用户Ao1iL1

这里都能看到IDE和编辑器的争论,泥萌都吃饱了撑的吗?
话说题主,为啥要黑我大Sublime 编辑器=-=

1 赞
很多人不理解,这种方式简单纯粹,直接理解编辑编译的基本过程。与使用IDE相比,就像考驾照选手动挡还是自动挡的区别。
1 赞
知乎用户lLiwir
我很喜欢这个风格的回答,哈哈哈哈哈哈哈!我觉得没有毛病,很有AWS客服的风格。嗯除非是当你收到AWS客服回的邮件的时候。。。。。。沉默
2 赞
从作者这个水平上来俯视确实是这样的,当你高水平的时候你确实可以说小排量手动车斜坡起步不用手刹,但是作者的同理心不够,提出的建议根本没从提问者的角度出发,无论作者有意无意,潜意识中应该是含有一定的秀技成分的
2 赞
谢谢操作还是秀技?这就是计算机的基本操作了,小学生都会做的。我刚才看到这个问题还在想,会不会出现vim,还好答主没有用vim
0 赞
我觉得你回答这么仔细别人还杠你,这都傻蛋操作了,居然有人说你秀。
2 赞
行行行,您最秀,开发全靠命令行,你怎么不去给纸带打孔呢???您在公司搞开发从来不用IDE???
0 赞
地铁风回复 Shzyws作者
很多人工作写代码也不用 ide. 你以为你用的全世界都得用么?你抬头看看是不是天空只有井口那么大?
0 赞
知乎用户Wvwdyi
现在终端配置一下,编译c++源程序还是很方便的,遇到c11特性还给你来个警告
0 赞
知乎用户A5GHQy

我的天,还要回到命令窗口运行?

0 赞
地铁风回复 知乎用户A5GHQy作者

不一定要回命令行窗口啊,你也可以建一个 Automator workflow 来运行程序⋯⋯

0 赞
知乎用户A5GHQy回复 地铁风

能够直接在编辑器当中输入命令,然后编译和执行吗?

0 赞
地铁风回复 知乎用户A5GHQy作者

除了记事本以外的编辑器都可以

0 赞
赞同楼主。我是vim用户。朋友如果问开发xx语言需要安什么,我都是让他上官网下编译器,解释器。用自己喜欢的文本编辑器去开发,不会推荐vim的。用文本编辑器开发再编译,熟悉一个环境,开发效率会提高的
0 赞
想环游世界的小唐
你这个比xcode一键式安装还复杂
0 赞
地铁风回复 想环游世界的小唐作者
连装都不用装,哪里复杂了?
0 赞
想环游世界的小唐回复 地铁风
我xcode 写完 按三角 你要来终端 用命令开编译器 拖入.c文件 运行 还不能debug 分步运行 我想找一个错还得来几次?
2 赞
地铁风回复 想环游世界的小唐作者
你试试呗,从头写一个 hello world,看那个需要的动作多。
0 赞
想环游世界的小唐回复 地铁风
抱歉 xcode 自动写好的就是helloworld
1 赞
怀念的是安逸
看到答主的视频,莫名笑出了声,把东西嚼烂了喂,大概就是这个意思吧[捂脸][捂脸][捂脸]
1 赞
说装逼的得是有多脑残,最基本的类unix,minix,linux指令(cd)都不会
4 赞
支持答主,我在美国做OS作业开始都是txt+make IDE之类的反而有点臃肿 对于小白更不太容易理解
0 赞

确实不难 可能刚开始会自己吓自己感觉会很难 多联系几次 知道啥操作啥命令就好了 别人的方法或许很适合别人 要自己慢慢踩坑找个适合自己的 就像小马过河 所以你们那些说答主秀的、对新手不友好的 批量制杖吗 你们试过吗 坚持多久了

另外请问我用SpaceVim和SpaceEmacs还是在Windows环境下 处于鄙视链的最底层吗 在线等挺急的

0 赞
知乎用户sVUgvX
题主说了他是大一,我觉得新手入门,纯文本编辑器也并无不妥
0 赞
同意答主,我也是新手,使用linux系统,我也觉得命令行编译很方便,新手的代码不需要那么庞大的IDE
0 赞

其实好好推荐这种写代码的方式就可以了,没必要先踩Xcode一脚。这种说话的口吻本来就容易让人产生想反对的冲动。再说,我大一写C的时候,还是多亏Xcode有实时语法检测让我避开了好多坑,快速进入学习语言的状态;而不需要因为什么打错字,或者什么中英文符号的原因断了写代码的兴趣。我也不觉得需要避开什么自动补全,新手入门,能写就是了。

4 赞
我觉得题主写的很好呀,哪有像高赞评论说的那样秀优越劝退...
0 赞
蓝天下云层上
很详细,很适合初学者,很容易让初学者有成就感
0 赞
知乎用户TXkl47
我都快不记得我写第一个程序的时候,是运气多好,看到一个和这个答案类似的手把手逐行教程。 ./a.out真香,现在一直是两个终端,一个改一个跑,甚至Sublime写完WinSCP扔Linux里跑。是不要也要被骂炫技了哈哈哈
0 赞
这么麻烦,你这是在作秀么
0 赞
地铁风回复 夏天作者
所以哪点麻烦了?
0 赞
地铁风回复 夏天作者
逗死了…… 你打开过 Xcode 么?选工程类型挑文件修改选 build 类型哪点不麻烦?能比写个文件跑个程序简单?
0 赞
夏天回复 地铁风
逗死了,这么多人怼你,不找找问题在哪?这么多人都是**?逗死了
0 赞
地铁风回复 夏天作者
呦,厉害呦,把别人拉上背你的锅~~ 👍🏼👍🏼 别人也许是吧,但主要是你。
0 赞
夏天回复 地铁风
作秀达人[赞]360度旋转作秀。随手拉黑,人人有责
0 赞
知乎用户ikkeGP
没有语法提示,效率-99.99%,当初学java,100行的作业,用记事本的人普遍写了两晚上(10小时左右),花1小时把大体框架写出来(非计算机专业的java语言,非常简单,大体逻辑谁都会),再花半小时修修补补到自认为正确的状态,然后在网页上提交,怎么提交都显示不对,然后一遍一遍的找问题,找了8个小时,用eclipse的人,语法错误一下就显示出来了,两小时完事
0 赞
地铁风回复 知乎用户ikkeGP作者

你编译一下语法错误一样能显示出来。

0 赞
知乎用户ikkeGP回复 地铁风
大部分人看不懂。。。。编程基础为零,只上过十次课,其中一节自我介绍,三节“什么是计算机,什么是操作系统,什么是编程,什么是c语音”,两节“如何安装和使用dev c”,剩下五节课大约讲到指针那块
0 赞
地铁风回复 知乎用户ikkeGP作者
好吧,为毛我们当年一上来就讲 c⋯⋯ 不过指针讲完也可以了~
0 赞
既不是最优解,也不是最新手友善解,你既然要走终端就直接vim和gcc走就好了,还走什么textedit?我13年早的mac开xcode没感受到卡啊?
1 赞
楼主根本没有诚意,clang 完了应该介绍 make 或者 cmake啊,标准入门姿势。
不介绍这个就好像 java 不介绍 gradle 或者 maven,haskell 不介绍 stack 或者 cabel ……
根本不是给正经人用的(눈_눈)
1 赞

我只想写个hello world然后你告诉我我必须得知道什么是工具链?能跑就完事了,初学讲一堆底层原理不是劝退?

都9102年了,还推荐新人用textedit写code。优秀!

1 赞
地铁风回复 Tony作者
我什么时候说工具链了 233333
0 赞
Tony回复 地铁风
为什么不推荐 Xcode?IDE 隐藏了关于工具链的细节
你自己写的,失忆了?
0 赞
地铁风回复 Tony作者
但是我什么时候说写 hello world 需要知道工具链了?
0 赞
南风咖啡达也酱
其实新手确实不推荐直接上手手动编译。
你说得没错,ide确实隐藏了很多编译细节,但是对于新手而言,这些细节都无关紧要
0 赞
南风咖啡达也酱
新手写代码第一件事不应该是学环境配置学编译过程,而是helloworld。
0 赞
地铁风回复 南风咖啡达也酱作者
打 cc 两个字母不算“学编译过程”吧?如果这算的话为啥按 build 按钮不算?
0 赞
知乎用户RUkWwc
言语略秀,但对初学者这个的确是最省心省力的方法。大一新生大部分的要求很低,后面也不需要跟科班的一样专业写代码。
我初学打开Xcode真的是不知所措
而且并不是所有人都是高配Mac。
1 赞
叫我Nick就行
不管怎么样,自己知道这个过程总对他有点好处
1 赞
我觉得用文本很好啊。。。跟linux里面直接用vim差不多
1 赞
F-Hreinskilin

为什么不推荐 Xcode?IDE 隐藏了关于工具链的细节,但是却凭空增加了太多其他的细节。比如「工程」,目录下的各种奇怪文件,创建工程时的各种选项,各种不同的 build 类型,等等。我觉得对于题主的需求来说这个交换是不值的。至于 IDE 提供的各种编辑时的方便,只有当项目中函数和类很多时才有用,对题主来说,打 “pr” 补全成 “printf” 真不能算什么了不得的功能,初学 C 能用到的函数就那么几个⋯⋯ 另外你想一下,如果小白题主想把自己的程序拷给同学,他能否正确地找出应该拷哪个文件?能否正确的在 Finder 里找到这个文件?如果同学想把自己的程序拷给他,他能否正确地把文件添加到工程里并且正确地 build

你这段话我不赞同,Xcode直接右键show in finder就行了,一个大一新生绝对知道show in finder是什么意思

0 赞
这个回答让我第一次知道原来可以通过拖文件夹的方式获得路径..牛逼就完事儿了...[赞同]
1 赞
可是说实话,曾经在Windows上写几十行C的时候也用过一把叫Visual Studio的牛刀
0 赞
青蘋回复 Divergence
建工程太麻烦了,把编译依赖加到环境变量里就能用cl了
dotnet更方便不用动环境变量可以在powershell里直接用csc
0 赞
知乎用户dCQyp0
Mac上用VS Code挺方便的,基础学习基本上够用了
0 赞
感觉答主这个回答是真的很详细啊,对新手友好至极了:P 一步一步跟着做就完全ok,又不用深入地探究什么(反正一开始搞配置也是跟着做不深究的这种)。一直觉得起步小白写一个简单的C程序,与其搞工程搞环境配置什么的不如直接vim+gcc,先把语法搞定了再去配置别的(逃
0 赞
凎 为啥同样是大一新生,我ds作业都破一千行了[思考]
1 赞
学习学习,最好的做法就是万事从简。学c语言就是学操作系统,学底层硬件。最好的就是用文本编辑器配上编译器,一切都要亲力亲为,这才是正确的玩法。
整个ide过来学c语言,可能只是想学语法,运算符优先级,写个hello world,根本没想去了解这些知识背后的原理。
我觉得答主说得好。[调皮]
1 赞
最方便的使用vscode,代码高亮,提示,编译,运行,都有插件
0 赞
已反对……如果说下载工具是难题,为什么不给个官网/网盘链接呢?鼓吹记事本加terminal写代码的都是流氓,clion一键式安装他不香?不用xcode而直接xcode-select install可能不少玄学问题的,根本不适合新手?越是不懂project/work dir/interpreter这些,以后越难以进步,丢过去一个gcc编译,是不是还要教人家-O1/2/3的区别呀?ld教不教呀?
0 赞
计算机小白想问问,Mac上有vim吗[可怜]个人比较习惯用vim但是没用过Mac不知道有没有Mac的版本
0 赞
地铁风回复 日天山君作者

有啊,自带吧好像。

0 赞
日天山君回复 地铁风
那不就很简单了嘛[飙泪笑]
不对,我好像还忽略了gcc,算了,反正我也没有Mac
0 赞

工程师大部分都这德行。以为会几个linux命令就日天日地日空气。其实在社会上他什么都不是。linux也好,windows也罢,都是个工具。能挣到钱才是王道。天天住着城中村,吃着猪脚饭,买不起房。就算你搞出了一个OS内核又怎么着? 能日天吗?

热心回答问题很好,但也要理解这些基本的东西很多人不懂是正常的。

0 赞
那些说用xcode的,你不知道每天有人来问你工程要怎么新建的时候的感觉吗,这里支持作者。毕竟初学者应该学习那些是c++的必备元素,那些不是,这个更加重要
1 赞
教程真的很友善,支持一个!学c连这些基本的东西都不清楚,学c意义何在,混毕业证吗?
0 赞
等你折腾完黄花菜都凉了,小工程没必要这么麻烦直接xcode完事
0 赞
地铁风回复 吴雨墨作者
在我的机械硬盘 mbp 上我都折腾完了 xcode 应该还没启动完。
0 赞
猫之公爵公之猫
简单来讲。。如果问的人这辈子只写这一个程序。。。那你这样教他没问题,如果他想入行。。。你这个就没什么意义。。。
0 赞
地铁风回复 猫之公爵公之猫作者
入个啥子行,还不如炒币。
0 赞
评论里酸答主装的 是因为只会用ide 只会调库 基础的东西一点都不会才会这么酸吧?
0 赞
小苏在潜水
好的 我创建作业1.那块搞不出来 应该去老年大学了
0 赞
楼主请问可以问下怎么用vscode配置c嘛,一直在报错, 查询了很多方法都不对,不知道是哪里的问题,可以请教一下嘛?
0 赞
谢谢楼主,新手小白太需要这个了!用系统自带的一二个小工具很简洁很棒!
1 赞