黑马程序员——C语言基础语法 关键字 标识符 注释 数据及数据类型
Java培训、Android培训、iOS培训、.Net培训、期待与您交流!
(一下内容是对黑马苹果入学视频的个人知识点总结)
(一)C语言简单介绍
(1)C语言程序是由函数组成的任何C语言程序都是由一个或多个程序段组成,每一个程序段都有自己的功能,叫做函数。所以说C语言都是由函数构成的。
(2)一个程序可以有无数个函数,没一个都有自己的名称,根据这些名称可以调用对应的函数来执行相应的功能。而main函数就是C程序的程序的入口。
#include <stdio.h>
// 这是一个main函数,是整个程序的入口
int main()
{
// 这个函数可以往屏幕中输出 111 和换行
printf("111\n");
return ;
}
编译:是将C源程序翻译成计算机能识别的0和1,能生成.o文件
链接的作用:将.o文件和C语言函数库组合在一起,生成可执行文件
以下是常见的一些错误
①不写分号、用了中文分号
②字符串少了双引号、或者用了单引号,双引号里面又有双引号
③代码没有写在main函数内部、return之前
④文件拓展名不是.c或者.C,比如.txt
⑤用绝对路径编译文件,注意目标文件生成的地方
以上是学习前的简单介绍 下面是基础语法
(二)关键字
1> 关键字就是C语言提供的有特殊含义的符号,也叫做“保留字”
2> C语言一共提供了32个关键字,这些关键字都被C语言赋予了特殊含义
auto double int struct break else long switch case enum register typedef char extern return union const float short unsigned continue for signed voiddefault goto sizeof volatile do if while static
3>关键字的基本特征
全部都是小写,在开发工具或者智能文本编辑工具中会显示特殊颜色。默认情况下,C语言中的所有关键字在Xcode中都会显示紫褐色
(三)标识符
1> 标识符就是在程序中自定义的一些符号和名称。要跟关键字区分开来:关键字是C语言默认提供的符号,标识符是程序员自定义的。
2>标识符的作用
1) 标识符,从字面上理解就是用来标识某些东西的符号,标识的目的就是为了将这些东西区分开来
2) 其实,标识符的作用就跟人类的名字差不多,为了区分每个人,就在每个人出生的时候起了个名字
3) C语言是由函数构成的,一个C程序中可能会有多个函数,为了区分这些函数,就给每一个函数都起了个名称。函数的名称就是标识符的一种。除了函数,以后还会学到“变量”这个概念,变量的名称也是标识符
3>标识符的命名
1) 命名规则(一定要遵守)
① 只能由26个英文字母的大小写、10个阿拉伯数字0~9、下划线_组成
② 严格区分大小写,比如test和Test是2个不同的标识符
③ 不能以数字开头
④ 不可以使用关键字作为标识符
2) 命名规范(最好遵守)
① 尽量起个有意义的名称,比如一个完整的英文单词,别人一看这个名称就能才能这个标识符的作用。如果不懂英文,你也可以用拼音,尽量不要起像abcde、sfsdfsdf等这类看起来没有意义的名称
② 如果标识符中含有多个单词,可以使用驼峰标识(除开第一个单词,后面每个单词的首字母都是大写):firstName、myFirstName,或者使用下划线_来连接:first_name、my_first_name
(四)注释
1> 注释是在所有计算机语言中都非常重要的一个概念,从字面上看,就是注解、解释的意思。 注释可以用来解释某一段程序或者某一行代码是什么意思,方便程序员之间的交流。假如我写完一行代码后,加上相应的注释,那么别人看到这个注释就知道我的这行代码是做什么用的。注释可以是任何文字,也就是说可以写中文。在开发工具中注释一般是豆沙绿色。
2>注释的分类
1)单行注释以两个正斜杠开头,也就是以//开头,只能注释一行,从//开始到这行的结尾都是注释的内容,任何地方都可以写注释:函数外面、里面,每一条语句后面
2)多行注释以/*开头,以*/结尾,/*和*/中间的内容都是注释
3>注释的作用
1) 注释是写给人看的,不是给计算机看的。因此,当编译程序的时候,并不会将注释编译到.o目标文件中
2) 检查代码的作用
3) 排除错误
4>注释的嵌套
① 单行注释可以嵌套单行注释、多行注释
② 多行注释可以嵌套单行注释
③ 多行注释不能嵌套多行注释
(五)数据分类及数据类型
1)数据分类
1> 静态数据 概念:静态数据是指一些永久性的数据,一般存储在硬盘中。
2> 动态数据(临时数据)概念:动态数据指在程序运行过程中,动态产生的临时数据,一般存储在内存中。
3> 不管是静态还是动态数据,都是0和1组成的。他们相互之间是可以转化的
2)数据类型
1> 常量 表示一些固定的数据
2> 常量的分类
① 整型常量(int)包括了所有的整数
② 浮点型常量分为double和float两种数据类型
③ 字符常量(char)
④ 字符串常量
3> 变量 数据的值需要经常改变或者不确定时,就应该用变量来表示。变量的目的是:在内存中分配一块存储空间给变量,方便以后存储数据。
① 格式
变量类型 变量名;比如 int num;
变量名属于标识符
不同类型的变量占用不同大小的存储空间。
#include <stdio.h> /*
1.变量的定义
变量类型 变量名;
int score; 2.变量的赋值
score = 100;
score = a;
score = b = 100; 3.变量的输出
int a = 200;
printf("%i", a);
常用格式符:
1> %d\%i 整数(int)
2> %f 小数(float、double)
3> %c 字符(char)
*/ int main()
{
// 赋值操作(初始化)
// 变量:只要有不确定的数据, 就应该定义变量来保存
int score = ; // %d\%i是一个格式符(占位符),只能输出整数
printf("分数是%d\n", score); float height = 1.78f; // %f用来输出小数,默认是6位小数
printf("身高是%f\n", height); char scoreGrade = 'D';
printf("积分等级是%c\n", scoreGrade);
printf("分数是%d,身高是%f,等级是%c\n", score, height, 'C'); return ;
}
黑马程序员——C语言基础语法 关键字 标识符 注释 数据及数据类型的更多相关文章
- 黑马程序员——OC语言基础语法 面向对象的思想
Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结)(一)基础语法 1)关键字 @interface.@implementati ...
- 黑马程序员——C语言基础 枚举 宏定义 自定义 static exterm
Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)枚举 1)枚举类型的定义 枚举是C语言中的一种基本数据类型,并不是构 ...
- 黑马程序员——C语言基础 函数
Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)函数的定义 1> 任何一个C语言程序都是由一个或者多个程序段( ...
- 黑马程序员——C语言基础 变量类型 结构体
Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)变量类型 1)局部变量 1> 定义:在函数内部定义的变量,称为 ...
- 黑马程序员——OC语言 其他语法
Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)ARC的判断准则:只要没有强指针指向对象,就会释放对象 1.ARC特 ...
- 黑马程序员——C语言基础 scanf函数 基本运算 三目运算符
Java培训.Android培训.iOS培训..Net培训.期待与您交流! (一下内容是对黑马苹果入学视频的个人知识点总结) (一)scanf函数 1> 简单介绍一下scanf函数 这是在 ...
- 黑马程序员——C语言基础 指针
Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)指针 首先指针是C语言中非常重要的数据类型,如果你说C语言中除了指针 ...
- 黑马程序员——C语言基础 char字符 数组
Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)char类型 1)存储细节 ASCII单字节表(双字节GBK\GB2 ...
- 黑马程序员——OC语言 核心语法 (3)
Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)分类Category 1) 基本用途 如何在不改变原来类模型的前提下 ...
随机推荐
- 原创: 开题报告中摘要部分快速将一段文字插入到word的表格中
开题报告的摘要是表格形式,之前需要一个一个字的敲入,十分不方便修改. 所以百度了一下方法.现总结如下: 达到的效果 1 将这段文字复制粘贴到word中,在word文件中的每一个字与字之间插入空格.如何 ...
- 软技能:十步学习法 (zhuan)
http://www.gyzhao.me/2016/11/07/Ten-Step-Learning-Method/ ****************************************** ...
- python类、对象、方法、属性之类与对象笔记
python中一切皆为对象,所谓对象:我自己就是一个对象,我玩的电脑就是对象,坐着的椅子就是对象,家里养的小狗也是一个对象...... 我们通过描述属性(特征)和行为来描述一个对象的.比如家里的小狗, ...
- jQuery封装函数
//1,插件命名:jQuery.插件名.js 为拉避免和其他库的冲突// //2,自定义插件尽量避免使用$ 如果非要使用$就一定要将jQuery传递进去,//写在最后加一个小括号写jquery ;结束 ...
- 各种element/format 在manage display 下的选项
long text = > plain text, summary and trimmed, trimmed,default, hiddenentity refernece => enti ...
- 图像fft和wavelet变换矩阵和向量区别 dwt2和wavedec2联系
1. 对于小波变换,dwt2 :单级离散2维小波变换 wavedec2 :多级2-D小波分解 matlab中这两者联系是都能对图像进行小波分解,区别是dwt2是二维单尺度小波变换,只能对输入矩阵X一 ...
- graph-tool文档(一)- 快速开始使用Graph-tool - 1.创建和操纵图
目录: 快速开始使用graph-tool 创建和操纵图 -- 遍历顶点和边 ----- 遍历所有顶点或边 ----- 遍历一个顶点的neighbourhood 名词解释: instante:实例 di ...
- NSNotification系统通知优化
最近在github上看到了LRNotificationObserver这个项目,看了一下实现方式,作者通过ARC机制实例化注册对象子类与关联对象的方法来管理注册对象的生命周期.从而省去了系统通知移除的 ...
- kwicks插件学习
/* Kwicks for jQuery (version 1.5.1) Copyright (c) 2008 Jeremy Martin http://www.jeremymartin.name/p ...
- MATLAB画图
画图代码 clear % http://www.peteryu.ca/tutorials/matlab/visualize_decision_boundaries % load RankData % ...