IOS开发--C语言入门--如何结合Terminal和Vim开发C语言程序

时间:2022-06-22 03:37:24

一直以来都想着挤出时间,记录开发之路的点点滴滴(现在记录已成回忆),和大家一起分享,开发人员总是在沟通和相互学习中提高自身的能力.路过的大神也好初学者也罢,若发现文章中又观点不对的,还望大家指出.

现在我将许久前的笔记稍作整理并分享给想入门IOS开发的朋友


使用终端(Terminal)和vim编写一个C语言程序

相关知识:

关于终端:mac 上的终端就像是 windows下面的DOS窗口.我们可以通过在上面输入相应的命令来使我们的电脑做一些事情.mac 下的终端亦是如此.

关于 vim: 简单来说就是一款编辑器,它是跨平台的,支持Linux ,UNIX,Windows,Mac OS各大平台,前身是vi 也就是说 vim是vi的增强版.

废话不多说,先来写第一个C语言程序

步骤如下:

  1. 打开终端.输入命令 cd Desktop/

作用:定位到桌面

2. 输入命令 mkdir Code

      作用:在桌面创建一个文件夹 名称为:Code

  3. 输入命令 cd Code/

      作用:定位到Code目录

  4. 输入命令 touch helloworld.c

    作用:创建一个 helloworld.c 的文件

说明:该文件将保存到我们的Code文件夹中

相关知识点:命令是在当前目录下执行操作的,这也就是我们为什么要定位到 Desktop 和定位到 Code中(当然,这个路径并无实在意义,大家可以定位到自己喜欢的任意路径下)

  5. 输入命令 vim helloworld.c 并回车

    作用:使用vim 打开我们创建好的helloworld.c文件

  6. 按下键盘i 并回车

     作用:这是vim 命令表示我们即将开始对该文件进行编辑,

  7. 输入代码

 #include <stdio.h>

 int main()

 {

         printf("hello world\n");//\n 表示换行

         return ;

 }

  8. 敲完代码我们按下 esc键并输入 :wq 回车 (注意冒号别漏了)

      作用:保存我们编辑的内容并退出vim

  以上步骤过后我们便编写好了一个C语言的源文件.接下来我们将要将它变成一个可执行程序并运行起来

  9. 编译和链接

  输入命令:gcc helloworld.c 并回车

  (该行命令实际上执行了两步操作,编译和链接)

  此时查看Code文件夹我们将看到生成a.out 文件

  这里解释一下编译和链接

  所谓编译:就是将我们的源代码”翻译”成我们计算机懂的机器语言(众所周知 的 010100101010…)代码.计算机的世界里只有 0和1

  所谓链接:就是将我们的源代码和其他C语言函数库链接起来.相当于给了我们一个工具箱.

  如我们用到的printf() 函数,就属于C语言函数库提供的函数之一.其作用是将文本内容打印(显示)到我们的屏幕上.若没有链接这个环节,当我们调用printf()函数的时候,编译器将报错,原因就是找不到该函数

  10. 运行

  输入命令 ./a.out 并回车

  结果:我们看到终端打印出 hello world

相关截图:

  1. 所有命令

IOS开发--C语言入门--如何结合Terminal和Vim开发C语言程序

2.vim编辑截图

IOS开发--C语言入门--如何结合Terminal和Vim开发C语言程序


  此外:附上一些常见命令的网站链接

  mac:

      http://ss64.com/osx/ 这个网站相对介绍得比较全面

  vim:

http://blog.csdn.net/xdrt81y/article/details/24062117/

IOS开发--C语言入门--如何结合Terminal和Vim开发C语言程序的更多相关文章

  1. 《C语言入门1&period;2&period;3—一个老鸟的C语言学习心得》—清华大学出版社炮制的又一本劣书及伪书

    <C语言入门1.2.3—一个老鸟的C语言学习心得>—清华大学出版社炮制的又一本劣书及伪书 [薛非评] 区区15页,有80多个错误. 最严重的有: 通篇完全是C++代码,根本不是C语言代码. ...

  2. C语言入门(21)——使用DBG对C语言进行调试

    C语言入门(21)--使用DBG对C语言进行调试 程序中除了一目了然的Bug之外都需要一定的调试手段来分析到底错在哪.到目前为止我们的调试手段只有一种:根据程序执行时的出错现象假设错误原因,然后在代码 ...

  3. C语言入门(2)——安装VS2013开发环境并编写第一个C语言程序

    在C语言入门系列中,我们使用Visual studio 2013 Professional作为开发工具.本篇详细介绍如何安装Visualstudio 2013 Professional并写出我们第一个 ...

  4. 清华大学出版社即将推出的又一本挂羊头卖狗肉的劣书 《C语言入门1&period;2&period;3—一个老鸟的C语言学习心得》

    http://www.tup.com.cn/book/showbook.asp?CPBH=051892-01

  5. C语言入门(20)——使用VC2013对C语言进行调试

    软件调试过程中,有时会一些逻辑和内存访问方面的问题,如果没有调试器的帮助,找出何处代码导致这块内存被更改是一件非常麻烦的事情.恰当运用数据断点可以快速帮我们定位问题的所在. 1.VC的调试快捷键 F5 ...

  6. Perl语言入门:第九章 使用正则表达式处理文本 示例程序和代码

    #! /usr/bin/perl use strict; use warnings; print "\n----------------------------------_substitu ...

  7. &lpar;五&rpar;Lua脚本语言入门

    ---恢复内容开始--- 写完这篇Lua脚本语言入门,自己就要尝试去用Lua脚本语言写esp8266了,,自己现在挺心急的,因为朋友使用esp8266本来说自己帮忙写好程序的,但是用的单片机不一样自己 ...

  8. 【Go语言入门系列】Go语言工作目录介绍及命令工具的使用

    [Go语言入门系列]前面的文章: [保姆级教程]手把手教你进行Go语言环境安装及相关VSCode配置 [Go语言入门系列](八)Go语言是不是面向对象语言? [Go语言入门系列](九)写这些就是为了搞 ...

  9. Go语言入门系列&lpar;四&rpar;之map的使用

    本系列前面的文章: Go语言入门系列(一)之Go的安装和使用 Go语言入门系列(二)之基础语法总结 Go语言入门系列(三)之数组和切片 1. 声明 map是一种映射,可以将键(key)映射到值(val ...

随机推荐

  1. shell(一)

    #服务器之间拷贝数据 scp  -r   本地文件目录    系统用户名@IP:目标文件夹路径

  2. 通过a&plus;&plus;来理解闭包改变作用域的问题

    纯属个人理解,如果有误请指出! 让我们先看一段代码 function dog(){ var a=100; a++; return a; } alert(dog()); alert(dog()); 我们 ...

  3. 消除 activity 启动时白屏、黑屏问题

    默认情况下 activity 启动的时候先把屏幕刷成白色,再绘制界面,绘制界面或多或少有点延迟,这段时间中你看到的就是白屏,显然影响用户体验,怎么消除呢? 在 Activity theme 设置sty ...

  4. Awstats分析Nginx日志

    1.nginx日志格式设定 log_format access '$remote_addr - $remote_user [$time_local] "$request" ' '$ ...

  5. proteus画元件

    一.元件概述 使用过“protel DXP”画元件的人想必对一个元件的构成已经非常清楚了.一个完整的元件包括如下几个部分: 元件 = 原理图元件模型 + PCB封装模型 + 电路仿真特性 1.原理图元 ...

  6. 【转】Linux中history历史命令使用方法详解

    原文网址:http://os.51cto.com/art/201205/335040.htm 当你在玩Linux的时候,如果你经常使用命令行来控制你的Linux系统,那么有效地使用命令历史机制将会使效 ...

  7. SQL中的排名函数(ROW&lowbar;NUMBER、RANK、DENSE&lowbar;RANK、NTILE)简介

    排名函数是Sql Server2005新增的功能,下面简单介绍一下他们各自的用法和区别. 在使用排名函数的时候需要注意以下三点: 1.排名函数必须有 OVER 子句. 2.排名函数必须有包含 ORDE ...

  8. linux 之用户管理

    用户的家目录 普通用户:/home/用户名/,所有者和所属组都是此用户,权限是700 超级用户:/root/,所有者和所属组都是root用户,权限是550 用户邮箱目录 /var/spool/mail ...

  9. Git Pull Github and Gitee or Gitlab

    GitHub实战系列汇总:http://www.cnblogs.com/dunitian/p/5038719.html 缩略Code:https://www.cnblogs.com/dotnetcra ...

  10. Java源码更改的方式

    1.找到要改的类所在包名地址. 比如标签名的更改: <s:debug></s:debug> (1)ctril+鼠标左键========双击标签,就会弹出标签所在的类的文本 (2 ...