黑马程序员-----c语言相识

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

本博主也属菜鸟一枚,刚刚入行,所以本博主认为我写的博客才更加平民化,同时,本博主又可以同大家一起巩固基础,起码入门是很重要的。正所谓万丈高楼平地起,平地下面有基地。

本系列博客主要描述c语言基础入门思路,简单易懂,大家可随时沟通交流。工具推荐使用终端命令。博主要学得是ios,先拿c基础入门,so博主后期用的开发工具是xCode,而且终端命令也是在Mac本上使用,大家要知道Mac系统是基于Unix系统!本博主还会在博客结尾中简单介绍写关于xCode的基础,希望不会扰乱各位的思路。

Windows安装终端--http://jingyan.baidu.com/article/03b2f78c69f3c25ea337ae4a.html

Mac自带终端

一.首先了解c语言是面向过程的编程语言,在编写程序时需要具体制定每一个过程的细节。是众多语言的基础,也就是我们常说的开山鼻祖。c语言在编写规模较小的程序时,还能得心应手,但在处理规模较大的程序时,就显得捉襟见肘、力不从心了。所以,实际发展中又有各种面向对象语言:java、c++、c#、object等。

关于c语言基础的掌握,本博主建议看《c程序设计》最新版现在是第四版--谭浩强 著,是各计算机学科的教材之一,也是对我们基础巩固的经典图书。此书采用的Visual C++6.0作为编译和运行环境,Windows系统用户可以参考http://jingyan.baidu.com/article/a501d80ce2a7ecec630f5eb8.html安装运行。

C语言的发展是老师讲的,而C语言的特点本博就捎带介绍一下:

(1)语言简洁、紧凑,使用方便、灵活;

(2)运算符丰富;

(3)数据类型丰富;

(4)具有结构化的控制语句;

(5)语法限制不太严格,程序设计自由度大;

(6)C语言运行直接访问物理地址,能进行位(bit)操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作;

(7)用C语言编写的程序可移植性好;

(8)生成目标代码质量高,程序执行效率高。

C语言中得重难点:
  1.运算符:自增、自减运算符
  2.进制:进制转换、原码、反码和补码
  3.数组:一维数组、二维、多维数组
  4.循环:多重循环的嵌套、排序、查找
  5.函数:递归函数、吊用
  6.指针:一级指针、多级指针、指针和数组、函数、结构体之间的关系
  7.内存管理:c语言的内存管理问题、内存泄露、野指针
  8.有参宏及条件编译
  9.多文件开发:多文件编译、多文件开发

C语言源程序:
  1.由函数构成
  2.只有一个主函数—由系统调用
    3.没有主函数则无法运行
    4.语句结束一定要有分号
    5.函数只有被调用时候,才执行

C语言常见注释符号:

//单行注释

/*多行注释*/

Program ended with exit code:0  程序执行结束并且推出

C语言源程序分析
  #include<stdio.h>//头文件,stdio.h--输入输出函数的调用
  int main(){//int 标志主函数的返回值,main 是主函数的名称
  //() 表示是主函数的参数,如果括号中什么都没有,表示没有参数  
  }//{}  函数体(代码块)

C语言程序执行的流程:
.c源程序—》编译—-》生成.o的目标文件(编译成二进制了已经)+ 连接到系统的库函数—》生成.out可执行文件

二.用终端编译C语言,需要了解的终端科普知识:

根目录:/

当前目录:.

父目录:..

绝对路径从'/'开始

相对路径从当前目录开始

常用命令:

1.cp命令 语法:cp[选项] <源文件名称或目录名称><目的文件名称或目录名称>。

功能:把给出的一个文件或目录复制到另一文件或目录中,或者把多个源文件复制到目标目录中。

参数:

-a此选项一般保留复制目录的链接、文件属性,并递归地复制目录。 -d复制时保留所有链接。

-f不提示删除已经存在的目标文件,在复制前先删除再进行复制。 -i与-f选项相反,它可以进行交互式复制。

-r若给出的源文件是一个目录文件,将递归复制该目录下所有的子目录和文件。目标文件必须为一个目录名。

-l只是链接文件,不作复制。

2. mv命令语法:mv [选项]<源文件或目录><目地文件或目录>

功能:为文件或目录改名或将文件由一个目录移入另一个目录中。参数:

-I该选项可以进行交互方式操作。 -f禁止交互操作。 例如:

(1)将/usr/lin中的所有文件移到当前目录(用“.”表示)中。 $ mv /usr/lin/ * .

(2)将文件a.txt重命名为b.doc。 $ mv a.txt b.doc

3.  rm命令 语法:rm[选项] <文件名称或目录名称…>

功能:该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。

参数:

-f从不给出提示,忽略不存在的文件。

-r指示rm将参数中列出的全部目录和子目录均递归地删除。加上该选项后,则rm不会删除目录。

-i进行交互式删除,确认是否要删除的每个文件。

例如:用户要删除文件file1和file2。然后会被要求对每个文件进行确认。用户最终决定删除file2文件,保留file1文件。

rm - i file1 file2 Remove file1 ?n Removefile2 ?y

4.  mkdir命令 语法:mkdir[选项]<目录名称> 功能:创建一个目录。 参数:

-m设置新建目录存取权限。当然也可以使用chmod命令设置。

-p可以是一个路径名称。此时,如果路径中的某些目录不存在,加上此选项后,系统将自动建立好那些不存在的目录,即一次可以建立多个目录。

例如:在当前目录中建立lin和lin下的/mail目录,也就是同时创建两个目录。 mkdir - p - m 700 ./lin/mail/

5.cd命令 语法: cd<目录路径>

功能:改变工作目录。若没有指定“目录路径”,则回到用户的主目录。

例如:假设用户当前目录是:/home/lin,现在需要更换到/home/lin/pro目录中, cd pro

6.  pwd命令 语法: pwd

功能:此命令显示出当前工作目录的绝对路径。

例如:显示的路径名为/home/mao,每个目录名都用“/”隔开,根目录以开头的“/”表示。 pwd /home/mao

7.  ls命令 语法: ls[选项][目录名称…]

功能:列出目录的内容。 参数:

-a显示指定目录下所有子目录与文件,包括隐藏文件。 -l以长格式来显示文件的详细信息。

-r按字母逆序或最早优先的顺序显示文件。

-R递归式地显示指定目录的各个子目录中的文件。

-L如果指定的名称为一个符号链接文件,则显示链接所指向的文件。 -t显示时按修改时间(最近优先)而不是按名字排序。 例如:

(1)列出当前目录的内容。 ls

(2)列出某个目录的内容。 ls–F /home/mao Mai1/

(3)列出某个目录下所有的文件,包括隐藏文件。 1s -a /home/mao

(4)用长格式列出某个目录下所有的文件,包括隐藏文件。 1s -la /home/xu

8.    touch命令 语法: touch[文件名称][文件后缀]

功能:创建文件

touch a.txt   touch a.doc

9.    clear 清屏

10.    ./命令  ./[可执行文件名][后缀]  执行应用程序

关于vim编辑器编辑C语言程序呢,推荐大家参照http://www.cnblogs.com/softwaretesting/archive/2011/07/12/2104435.html

关于xCode一点简单介绍
1. Xcode常见的快捷键
cmd+R 运行
cmd+.停止
cmd+U test
    缩进:
cmd+[
cmd+]
    回到home界面
cmd+shift+h 
    调节界面大小:
cmd+1
cmd+2
cmd+3

2.用xcode创建c语言程序命名规则:
product name:产品名称
organization name:公司名
organization identity:公司域名倒着写  
例如:baidu.com  -—》com.baidu
bundle identifier:程序标识

3.打开原有的项目不要直接打开main.c
要打开.xcodeproj
xcode项目文件后缀—》.xcodeproj

4.如何创建target--在一个工程下创建多个小项目
点左侧菜单的蓝色项目
中间的菜单栏里就是target,里面的+、-号是创建和删除target

今天的知识都是最基本的常识,简易化了,还是要动手做才是王道!东西该装得装上,这些快捷键、命令都试一下吧!忘大神们赐教!

-----------ios培训、ios学习型技术博客、期待与您交流!------------

黑马程序员-----c语言从相识相知到renascence持续发布中第一篇相关推荐

  1. 黑马程序员C语言基础(第五天)运算符与表达式、程序流程结构、数组和字符串、函数

    https://www.bilibili.com/video/BV15W411K7k6?p=93&spm_id_from=pageDriver 黑马程序员C语言基础(第五天)运算符与表达式.程 ...

  2. 黑马程序员——c语言学习心得——函数传递二维数组

    黑马程序员--c语言学习心得--函数传递二维数组 -------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 一.定义指针的时候一定要初始化.    变量 ...

  3. 黑马程序员C语言基础(第八天)复合类型(自定义类型)(结构体)、共用体(联合体)、枚举enum、 typedef

    黑马程序员C语言基础(第一天) 黑马程序员C语言基础(第二天) 黑马程序员C语言基础(第三天) 黑马程序员C语言基础(第四天)数据类型 黑马程序员C语言基础(第五天)运算符与表达式.程序流程结构.数组 ...

  4. 黑马程序员C语言基础(第七天)内存管理

    黑马程序员C语言基础(第一天) 黑马程序员C语言基础(第二天) 黑马程序员C语言基础(第三天) 黑马程序员C语言基础(第四天)数据类型 黑马程序员C语言基础(第五天)运算符与表达式.程序流程结构.数组 ...

  5. 黑马程序员C语言基础(第三天)

    黑马程序员C语言基础(一)第三天 https://www.bilibili.com/video/BV15W411K7k6?p=40 文章目录 低级语言与高级语言 c语言优缺点 c语言应用领域 通过gc ...

  6. 黑马程序员--C语言基础之--变量、内部函数与外部函数

    ------IOS培训期待与您交流! ------- 一.变量 变量代表着一个有名字的.具有特定属性的一个存储单元,运行期间,变量的值是可以改变的.变量必须先定义,后使用.定义时,指定该变量的名字与类 ...

  7. 黑马程序员——C语言基础---基础语法

    ------<a href="http://www.itheima.com" target="blank">Java培训.Android培训.iOS ...

  8. 黑马程序员--- c语言基础--基本语法

    **第一讲 c语言概述** 一. 计算机和软件常识 1. 计算机运行原理 1) 硬件基本组成:硬盘.内存.CPU 2) 各个部件之间的运作协调 计算机只能识别0和1 1) 0和1组成的指令 2) 0和 ...

  9. 黑马程序员C语言基础(第六天)指针

    https://www.bilibili.com/video/BV1jW411K7v2/?p=70&spm_id_from=pageDriver 文章目录 指针 概述 内存 物理存储器和存储地 ...

  10. 黑马程序员C语言基础(第四天)数据类型

    https://www.bilibili.com/video/BV15W411K7k6?p=65&spm_id_from=pageDriver 文章目录 数据类型 常量与变量 关键字 数据类型 ...

最新文章

  1. 人工智能能否复制人脑引争论 美媒:目前AI仍存在局限性
  2. 微信小程序ios可以上下左右拖动的问题
  3. oracle数据库单个数据文件的大小限制
  4. ZYAR20A 亚克力2驱 蓝牙 298寻迹避障机器人 ——材料清单
  5. 配置 mybatis的 log4j.properties
  6. [CB]将窗体从属于主窗体
  7. 大数据系列的默认端口(hbase,hadoop,hived等)
  8. Linux网络协议指令:ifconfig/netstat(net-tools)工具 .vs. iproute2
  9. win10下的用交叉线实现文件共享
  10. Spark常见优化原则
  11. JAVA入门到精通-第64讲-sql server备份恢复
  12. 无人驾驶的分级以及产品化后会带来的改善
  13. C#ToString() 格式化数值
  14. 深入浅出通信原理MIMO合集
  15. axure8下拉表单_AXURE RP 8怎么设置下拉菜单? AXURE下拉菜单的制作方法
  16. 《Windows》Windows桌面设置
  17. ubuntu12.04/14.04/16.04 安装搜狗输入法 解决shift按键不能切换英文输入
  18. Mip-NeRF 360
  19. 【从零开始学深度学习编译器】十五,MLIR Toy Tutorials学习笔记之Lowering到LLVM IR
  20. 这图怎么画| 相关性热图+柱状图

热门文章

  1. 东北大学金工实习工程实训习题
  2. 全国计算机大赛游戏作品,计算机作品大赛优秀作品展示---数字动漫游戏栏目
  3. 系统接口框架设计与实现
  4. Qt QLabel样式表总结
  5. QQ坦白说解密(一)
  6. vs2017 安装MFC
  7. 测试睡眠的软件是,MOORING睡眠检测
  8. EEGLAB工具箱的下载与安装
  9. java string通配符_java通配符
  10. 【动态规划】 EditDistance