C语言02
C语言02
1.2 C语言与C程序
1.计算语言
语言发展
机器语言:机器语言是机器能直接识别的程序语言或指令代码,勿需经过翻译,每一操作码在计算机内部都有相应的电路来完成它,或指不经翻译即可为机器直接理解和接受的程序语言或指令代码。机器语言使用绝对地址和绝对操作码
汇编语言:是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。不可直接移植
高级语言:是一种独立于机器,面向过程或对象的语言。高级语言是参照数学语言而设计的近似于日常会话的语言。
语言分类
面向过程语言:C、Fortran
面向对象语言:Java、C++、php
脚本语言:JavaScript、Python
2.C语言简介
C语言特点
C语言具有高级语言的特点,又具有汇编语言的特点
为了移植和开发UNIX操作系统,由美国贝尔实验室于1972年推出, 1978年后广泛(各种机型)应用;
可作为系统设计语言,也可作为应用程序设计语言;
具备高效、灵活、功能丰富、表达力强和较高的可移植性等特点,也有很强的数据处理能力,常用于软件开发和各类科研;
适于编写三维、二维图形和动画。
C语言标准
ANSI C( C89 )----第一 个C标准,由美国国家标准协会ANSI发布(准国际标准) , 所有开发工具都支持;
C90----国际标准ISO/IEC 9899:1990 ,发布为ISOC,第一个真标准(仅有小改动) ;
C99----作了多处改动或确认(有些重大改动),增加了国际化支持的新库函数,由ANSI发布;
C11----最新C标准 ,由ANSI发布。
3.C语言规则
程序设计语言的基本成分
数据成分:描述程序所涉及的数据
运算成分:描述程序中的所有运算
控制成分:描述程序的控制流程
传输成分:表达数据的传输输入和输出
ASCII字符集规则
数 字:0 1 2 3 4 5 6 7 8 9
字 母:a b c ... z A B C...Z
运算符:+ - * / % =....
特殊符号:_(下划线) 回车(\r) 换行(\n) 制表符(\t)
标识符规则
基本标识符:变量名、函数名、文件名、数组名、类型名
规则:字母或下划线开头,后面是字母、下划线或数字
保留字
保留字 含义 auto 指定变量的存储类型,是默认值 break 跳出循环或switch语句 case 定义switch中的case子句 char 定义字符型变量或指针 const 定义常量或参数 continue 在循环语句中,回到循环体的开始处重新执行循环 default 定义switch中的default子句 do 定义do-while语句 double 定义双精度浮点数变量 else 定义枚举类型 enum 声明外部变量或函数 extern 声明外部变量或函数 float 定义浮点型变量或指针 for 定义for语句 goto 定义goto语句 if 定义if语句或if-else语句 int 定义整型变量或指针 long 定义长整型变量或指针 register 指定变量的存储类型是寄存器变量,Turbo c中用自动变量代替 return 从函数返回 short 定义短整型变量或指针 signed 定义有符号的整型变量或指针 sizeof 获取某种类型的变量或数据所占内存的大小,是运算符 static 指定变量的存储类型是静态变量,或指定函数是静态函数 struct 定义结构体类型 switch 定义switch语句 typedef 为数据类型定义别名 union 定义无符号的整型或字符型变量或指针 unsigned 定义无符号的整型变量或数据 void 定义空类型变量或空类型指针,或指定函数没有返回值 volatile 变量的值可能在程序的外部被改变 while 定义while或do-while语句 运算符规则
类别 种类 具体形式 算术运算符 5 +. - .*. /. % 自增自减运算符 2 ++. -- 关系运算符 6 < .> .<= .>=.==.!= 逻辑运算符 3 && . || . ! 位运算符 6 | . ^ . & . << . >> . 赋值与赋值组合运算 11 = . += . -= . *= . /= . %= . <<= . >>= . |= . &= . ^= 条件运算符 1 ? : 其他 9 * . & . (type) . () . [ ] . . . -> . sizeof 语句规则
流程控制语句
表达式语句
复合语句
空语句
#include "stdio.h" /*调用标准输入输出*/
main(){
int i = 1;
while(i <= 100){ /*循环开始*/
if(i % 3 == 0) /*判断*/
printf("%d",i); /*输出*/
i++;
}
printf("%d",i);
}函数规则
数学函数的原型math.h
字符函数ctype.h
字符串函数string.h
输入输出函数stdio.h
动态存储分配函数stdlib.h
C语言优势
很多语言以C语言为基础而设计得到
代码质量高
接近硬件底层
适用范围大,可移植性好
C语言02的更多相关文章
- C语言-02基本运算
1.除法运算 / 整数除于整数,还是整数.参与运算的操作数必须是同类型. 1/2的值是0.参与运算的操作数是什么类型,得出的值就是什么类型. 10.5 + 10将右边的10提升为了double类型 ...
- OC语言-02面向对象的三大特性
01封装 #import <Foundation/Foundation.h> @interface Student : NSObject { //@public 成员变量尽量不使用 int ...
- C语言 02 include
stdio.h h表示header file include"text.txt" 自己写的文件用双引号,系统自带文件用<>. 绝对路径用 / ,相对路径不带/
- C#语言-02.数据类型
a. 数据类型 i. 值类型:是一种由类型的实际值表示的数据类型,存储在栈内的存储空间中,由于编译器编译后将源代码中的值类型变量直接对应到唯一的存储空间上,直接访问该存储空间,故值类型的数据具有较快地 ...
- 算法实现c语言--02
从键盘上输入字符,将小写字母转换成大写字母.输入“ctl + z” 结束 . #include<stdio.h> #include<stdlib.h> //从键盘上输入字符,将 ...
- C#语言和数据库基础
第一章 第一个C#程序 Vs2012密钥 RBCXF-CVBGR-382MK-DFHJ4-C69G8 01..net和C#的区别 大概在2000年,微软推出了一种革命性的产品--.NET(战略) 目标 ...
- C#语言的基础
一.C#的引入 01..net和C#的区别 1)大概在2000年,微软推出了一种革命性的产品--.NET(战略) 目标:任何人,在任何地方,使用任何终端设备,都可以访问微软提供的服务. 2).net ...
- c#前3章总结
01.net和c#的区别 大概在2000年,微软推出了一种革命性的产品--.NET(战略) 目标:任何人,在任何地方,使用任何终端设备,都可以访问微软提供的服务. .net Framework:要想让 ...
- 【Linux】-NO.87.Assembly.1.滴水逆向.1.001-【介绍】-
1.0.0 Summary Tittle:[Linux]-NO.87.Assembly.1.滴水逆向.1.001-[基础]- Style:Java Series:Log4j Since:2017-04 ...
随机推荐
- 详解Python Graphql
前言 很高兴现在接手的项目让我接触到了Python Graphql,百度上对其介绍相对较少也不够全面,几乎没有完整的中文文档,所以这边也借此机会学习一下Graphql. 什么是Graphql呢? Gr ...
- Jmeter逻辑控制器之If Controller的使用解析
一.If Controller概述 类似于编程语言中if语句,根据给定表达式的值决定是否执行该节点下的子节点,表达式的值 为true则执行,为false则不执行,默认使用javascript语法进行判 ...
- windows下RocketMQ的安装部署
一.预备环境 1.系统 Windows 2. 环境 JDK1.8.Maven.Git 二. RocketMQ部署 1.下载 1.1地址:http://rocketmq.apache.org/relea ...
- Vue管理系统前端系列五自定义主题
目录 自定义主题 1.安装「主题生成工具」 2.安装白垩主题 3.新建颜色挑选组件 自定义主题 1.安装「主题生成工具」 由于主题工具需要依赖于 node-sass,而node-sass版本兼容性并不 ...
- Spring Boot 如何解决项目启动时初始化资源
在我们实际工作中,总会遇到这样需求,在项目启动的时候需要做一些初始化的操作,比如初始化线程池,提前加载好加密证书等.今天就给大家介绍一个 Spring Boot 神器,专门帮助大家解决项目启动初始化资 ...
- 个人项目WordCount(C++/QT)
个人项目WordCount(C++/QT) GitHub项目地址:https://github.com/Nova-cjp/Word-Count 百度云链接:https://pan.baidu.com/ ...
- Federated Optimization for Heterogeneous Networks
郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! arXiv:1812.06127v3 [cs.LG] 11 Jul 2019 目录: Abstract 1 Introduction 2 ...
- 欢迎来到 C# 9.0(Welcome to C# 9.0)【纯手工翻译】
翻译自 Mads Torgersen 2020年5月20日的博文<Welcome to C# 9.0>,Mads Torgersen 是微软 C# 语言的首席设计师,也是微软 .NET 团 ...
- 网站被K或者降权后应该如何恢复
http://www.wocaoseo.com/thread-133-1-1.html 网站被K后应该如何恢复,深圳SEO和大家一起研究一下,其实这类的问题大家经常会遇到,而且这类的文章铺天盖 ...
- 《MySQL数据库》MySQL ERRORLOG,BINLOG,SLOWLOG日志详解
前言 MySQL 经常出现启动错误或者执行错误等等,这个时候我们需要查询error日志 在数据库使用中,经常会出现需要恢复数据的情况,MySQL如果需要恢复数据的话需要开启binlog(二进制日志). ...