黑马程序员技术交流社区

标题: 第二天知识点,感谢提出建议的朋友们,我会加油的。 [打印本页]

作者: 蜗牛快跑    时间: 2014-10-10 08:31
标题: 第二天知识点,感谢提出建议的朋友们,我会加油的。
C语言:

1.程序结构
(1)C程序的结构:由函数组成
(2)函数的基本概念:
函数名:一个程序中由无数个函数组成,每个函数都有自己的名称
调用(执行)函数:根据函数名就可以调用对应的函数,执行相应的功能。
(3)程序的入口:
C程序的入口是一个名字叫做main的函数,简称main函数。
不管整个程序中有多少函数,都是先执行main函数。

2.编写程序
(1)编写main函数(大括号{}中的内容是函数体)
int main()
{
return 0;
}

3.运行命令
(1)cd 代码所在路径。
(2)cc -c 代码名.c(会生成一个 (代码名.o)的文件)。
(3)cc 代码名.o(会生成一个(a.out))。
(4)./a.out(回车以后就是运行结果了)。

4.输出
int main()
{
printf(“hahaha\n”);
return 0;
}
双引号里面是想要输出的数据。
\n是换行的意思。

5.关键字
(1)含义:就是C语言提供的有特殊含义的符号,也叫做“保留字”。
(2)特征:全部都是小写,在开发工具或者智能文本编辑工具中会显示特殊颜色,默认情况下,C语言中的所有关键字在Xcode中都会显示紫褐色。
(3)Main函数中哪些是关键字:
      int          return

6.标识符
(1)标识符,从字面上理解就是用来标识某些东西的符号,标识的目的就是为了将这些东西区分开来。
(2)其实,标识符的作用就跟人类的名字差不多,为了区分每个人,就在每个人出生的时候起了个名字。
(3)C语言是由函数构成的,一个C程序中可能会有多个函数,为了区分这些函数,就给每一个函数都起了个名称。函数的名称就是标识符的一种。除了函数,以后还会学到“变量”这个概念,变量的名称也是标识符。

7.命名
(1)命名规则(一定要遵守)
  只能由26个英文字母的大小写、10个阿拉伯数字0~9、下划线_组成
  严格区分大小写,比如test和Test是2个不同的标识符
  不能以数字开头
  不可以使用关键字作为标识符

(2)命名规范(最好遵守)
  尽量起个有意义的名称,比如一个完整的英文单词,别人一看这个名称就能才能这个标识符的作用。如果不懂英文,你也可以用拼音,尽量不要起像abcde、sfsdfsdf等这类看起来没有意义的名称
  如果标识符中含有多个单词,可以使用驼峰标识(除开第一个单词,后面每个单词的首字母都是大写):firstName、myFirstName,或者使用下划线_来连接:first_name、my_first_name

8.常见的标识符命名错误
合法标识符        非法标识符        注释
fromNo12        from#12        标识符中不能使用#符号
my_Boolean        my-Boolean        标识符中不能使用“-”符号,应使用下划线“_”代替
Obj2        2ndObj        标识符不能使用数字开头
myInt        int        “int”是内建关键字
jack_rose        jack&rose        符号“&”不能出现在标识符中
GUI        G.U.I        标识符内部需要出现“.”分隔符


8.注释
1)注释是在所有计算机语言中都非常重要的一个概念,从字面上看,就是注解、解释的意思
2)注释可以用来解释某一段程序或者某一行代码是什么意思,方便程序员之间的交流。假如我写完一行代码后,加上相应的注释,那么别人看到这个注释就知道我的这行代码是做什么用的
3)注释可以是任何文字,也就是说可以写中文
4)在开发工具中注释一般是豆沙绿色

单行注释
1)单行注释以两个正斜杠开头,也就是以//开头,只能注释一行,从//开始到这行的结尾都是注释的内容
2)任何地方都可以写注释:函数外面、里面,每一条语句后面
多行注释
多行注释以/*开头,以*/结尾,/*和*/中间的内容都是注释

注释的作用
(1)被注释的代码不会参与编译
注释是写给人看的,不是给计算机看的。计算机怎么可能看得我们写的中文嘛。因此,当编译程序的时候,并不会将注释编译到.o目标文件中
(2)从.o文件的大小可以间接看出注释后的代码并没有被编译
检查代码的作用
排除错误

注释的嵌套现象
(1)单行注释可以嵌套单行注释、多行注释
// 哇哈哈 // 呵呵呵
// /* fsdfsdf */  // sdfsdfsd
(2)多行注释可以嵌套单行注释
/*   
// 作者:MJ
// 描述:第一个C语言程序
作用:这是一个主函数,C程序的入口点  
*/
(3)多行注释不能嵌套多行注释
/* 哈哈哈
  /*嘻嘻嘻*/
   呵呵呵 */
(4)下面的写法是错误的
// /*  
哈哈哈
*/

9.变量
当一个数据的值需要经常改变或者不确定时,就应该用变量来表示。比如游戏积分。

定义变量
(1)目的
任何变量在使用之前,必须先进行定义。
定义变量的目的是:在内存中分配一块存储空间给变量,方便以后存储数据。
如果定义了多个变量,就会为这多个变量分别分配不同的存储空间。
(2)格式
变量类型  变量名;
比如int num;
变量名属于标识符
变量类型
不同类型的变量占用不同大小的存储空间。内存极其有限,分配适当的存储空间
约束变量所存放的数据类型(方便运算)

10.变量的使用
(1)赋值
往变量里面存点东西,就是赋值。赋值语句后带个分号;
i = 10;
注意:这里的等号=,并不是数学中的“相等”,而是C语言中的赋值运算符,作用是将右边的常量10赋值给左边的变量i
第一次赋值,可以称为“初始化”
初始化的两种形式
先定义,后初始化:int a;  a = 10;
定义的同时进行初始化:int a = 10;
(2)修改
可以修改变量的值,多次赋值。每次赋值都会覆盖原来的值
i = 10;
i = 20;
变量i最后的值是20
使用printf输出一个\多个变量的值
int a = 10, c = 11;
printf("a=%d, c=%d", a, c);
double\float\char的输出,格式符的一些小技巧
double height = 1.55;
char blood = 'A';
printf("height=%.2f, 血型是%c",  height,  blood);
简单的加减操作
int a = 10 + 20;
没有初始化时不要拿来使用(下面的写法是不建议的)
int score;
printf("score=%d", score);
(3)变量之间值的传递
可以将一个变量的值赋值给另一个变量
int a = 10;
int b = a;
连续赋值
a = b = 10;  





作者: 米匠    时间: 2014-10-10 15:12
不错不错,加油
作者: duzhong    时间: 2014-10-10 17:19
你们看都不看完就说不错?他说的这是C语言吧。C语言中怎么会出现
3.运行命令
(1)cd 代码所在路径。
(2)cc -c 代码名.c(会生成一个 (代码名.o)的文件)。
(3)cc 代码名.o(会生成一个(a.out))。
(4)./a.out(回车以后就是运行结果了)。
我书读得不多,不要骗我哦
作者: zhuohong_xiao    时间: 2014-10-10 20:40
duzhong 发表于 2014-10-10 17:19
你们看都不看完就说不错?他说的这是C语言吧。C语言中怎么会出现
3.运行命令
(1)cd 代码所在路径。

我也读书少,但是我知道,卤煮写的这东西还是错的。
哥们,你去看看视频就知道这是为什么。


unix系统的命令就是这样的。
卤煮,这是用mac系统在学习啊。
作者: duzhong    时间: 2014-10-10 23:55
zhuohong_xiao 发表于 2014-10-10 20:40
我也读书少,但是我知道,卤煮写的这东西还是错的。
哥们,你去看看视频就知道这是为什么。

嗯嗯,在mac中是这样的。
作者: 邢玉池    时间: 2014-10-11 00:08
你在传智伟哥班上吗?
作者: 蜗牛快跑    时间: 2014-10-11 08:28
邢玉池 发表于 2014-10-11 00:08
你在传智伟哥班上吗?

不是的,准备进黑马。下载的入门视频
作者: 杰克船长    时间: 2014-10-11 10:59
加油加油
作者: 魔法少年十三    时间: 2014-10-11 11:07
duzhong 发表于 2014-10-10 17:19
你们看都不看完就说不错?他说的这是C语言吧。C语言中怎么会出现
3.运行命令
(1)cd 代码所在路径。

用clang或者gcc编译会产生中间文件
作者: 孙林    时间: 2014-10-11 15:01
写的很仔细。说明很认真。向你学习。
作者: 736010695    时间: 2014-10-11 17:08
加油,加油,一起努力...




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2