浅谈程序设计和C语言
学前必备知识
程序:一组计算机能识别和执行的指令。
计算机语言:计算机工作基于二进制,计算机只能识别和接受由0和1组成的指令。
计算机能直接识别和接受的二进制代码称为机器指令。机器指令的集合就是该计算机的机器语言。
一条符号语言的指令对应转换为一条机器指令。转换的过程称为“汇编”,因此符号语言又称汇编语言。
高级语言:接近于人们习惯使用的自然语言和数学语言。(它与具体的机器距离较“远”)
源程序:高级语言写的程序
目标程序:使用编译器将源程序转换为机器指令的程序。
编译方式:A、解释方式 B、编译方式
高级语言的发展阶段:
A、非结构化语言
B、结构化语言
C、面向对象语言
C语言的特点:
1、语言简洁、紧凑、使用方便、灵活。
2、运算符丰富。(共有34种运算符)
3、数据类型丰富。
4、具有结构化的控制语句。
5、语法限制不太严格,程序设计自由度大。
6、C语言允许直接访问物理地址,能进行bit(位)操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作。
7、用C语言编写的程序课移植行好。
C语言入门程序
在屏幕上输出 I love C program.
1 #include<stdio.h>
2 int main()
3 {
4 printf("I love C program.\n");
5 return 0;
6 }
程序分析
main()是函数的名字,表示主函数,main前面的int表示此函数的类型是int类型(整型)。即执行主函数后会得到一个值(即函数值),其值为整型。
return 0的作用是:当main函数执行结束钱将整数0作为函数值,返回到调用函数处。
\n:表示换行符。
#include<stdio.h>:调用函数库中的输入输出函数(编译系统要求程序提供有关此函数的信息)--------》预处理阶段
文件后缀名.h的意思是头文件,因为这些文件都是放在程序各文件模块的开头的。
每一个C语言程序都必须有一个主函数(main函数),函数体由花括号{}括起来。
在每个数据声明和语句的最后必须有一个分号。
程序注释符
//:单行注释
/**/:多行注释
运行C语言的步骤与方法
源程序(编写程序)------》目标程序(对源程序进行编译)------》可执行程序(进行连接处理,生成可执行程序)------》运行程序------》生成结果
浅谈程序设计和C语言的更多相关文章
- 浅谈单片机中C语言与汇编语言的转换
做了一单片机设计,要用C语言与汇编语言同时实现,现将这次设计的感受和收获,还有遇到的问题写下,欢迎感兴趣的朋友交流想法,提出建议. 单片机设计:基于51单片机的99码表设计 软件环境:Proteus8 ...
- 浅谈javascript和python语言的深拷贝
深拷贝: 之前在开发中我遇到一个很大的bug,经过我多次调试之后我发现原本应该有保存数据的地方数据全部被清空,仔细一看发现原来是被人为删除,明明操作的是一个副本,为什么原本也会跟着一起被删除呢?经过了 ...
- 新手码农浅谈观察者模式(java语言简单实现)
一:什么是观察者模式: 官方定义:定义对象间一种一对多的依赖关系.当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新. 举个例子,很多人都会订阅天气预报,当气象台获得明天的天气情况( ...
- 浅谈C语言中断处理机制
一.中断机制 1.实现中断响应和中断返回 当CPU收到中断请求后,能根据具体情况决定是否响应中断,如果CPU没有更急.更重要的工作,则在执行完当前指令后响应这一中断请求.CPU中断响应过程如下:首先, ...
- 浅谈c语言结构体
对于很多非计算机专业来说,c语言课程基本上指针都不怎么讲,更别说后面的结构体了.这造成很多学生对结构体的不熟悉.这里我就浅谈一下我对结构体的认识. 结构体,就是我们自己定义出一种新的类型,定义好之后, ...
- Web服务器和动态语言如何交互--CGI&FastCGI&FPM浅谈
一个用户的Request是如何经过Web服务器(Apache,Nginx,IIS,Light)与后端的动态语言(如PHP等)进行交互并将结果返回给用户的呢? 本文浅谈个人观点,可能有误,欢迎拍砖,共同 ...
- 浅谈C语言中的强符号、弱符号、强引用和弱引用
摘自http://www.jb51.net/article/56924.htm 浅谈C语言中的强符号.弱符号.强引用和弱引用 投稿:hebedich 字体:[增加 减小] 类型:转载 时间:2014- ...
- 浅谈Java语言环境搭建-JDK8
title: 浅谈Java语言环境搭建-JDK8 blog: CSDN data: Java学习路线及视频 1.What's the JDK,JRE JDK(Java Development Kit ...
- 【转载】浅谈游戏开发之2D手游工具
浅谈游戏开发之2D手游工具 来源:http://www.gameres.com/459713.html 游戏程序 平台类型: iOS Android 程序设计: 其它 编程语言: 引擎/SDK ...
随机推荐
- MongoDB 在Node中的应用
转: MongoDB 在Node中的应用 文章目录 一 .什么是 MongoDB? 二.小Demo 三.Demo 增删改查 3.1 新增 3.2 查询 3.2.1 查询所有 [{},{}] 找不到返回 ...
- MySQL 多表查询与事务的操作
表连接查询 什么是多表查询 # 数据准备 # 多表查询的作用 * 比如:我们想查询孙悟空的名字和他所在的部门的名字,则需要使用多表查询 # 如果一条 SQL 语句查询多张表,因为查询结果在多张不同的表 ...
- Java开发工程师最新面试题库系列——Mybatis框架部分(附答案)
Mybatis Mybatis是什么框架? 答:持久层框架 Mybatis和ORM有什么区别? 答:ORM是对象关系映射的一种设计理念,也就是对象属性对应数据库字段,让开发人员以操作对象的方式操作数据 ...
- Asp.Net Core WebAPI中启用XML格式数据支持
因为XML是一种非常常用的数据格式,所以Asp.Net core提供了非常便利的方式来添加对XML格式的支持 只需要在IOC注册Controller服务的后面跟上.AddXmlDataContract ...
- 关于PHP中$和$$的区别
$var 这是一个正常的变量,可以存储任何值(string/int/float等等)$$var 这是一个引用变量,存储$var的值$$$var 存储$$var的值 代码如下: 1 <? ...
- Mongo的相关语法
mongod的条件操作符 $gt -------- greater than > $gte --------- gt equal >= $lt -------- less than < ...
- Redis 高并发带来的一些问题
前言 本文讲述Redis在遇到高并发时的一些问题.即遇到大量请求时需要思考的点,如缓存穿透 缓存击穿 缓存雪崩 热key处理.一般中小型传统软件企业,很难碰到这个问题.如果有大并发的项目,流量有几百万 ...
- C# 基础 - Enum 的一些操作
1. int 转换成 enum public enum Suit { Spades, Hearts, Clubs, Diamonds } Suit spades = (Suit)0; Suit hea ...
- Django常见问题集锦
1. 解决pycharm终端/cmd运行python脚本报错"ImportError/ModuleNotFoundError:No Module named ..." 问题 项目结 ...
- JAVA常用的集合转换
在Java应用中进行集合对象间的转换是非常常见的事情,有时候在处理某些任务时选择一种好的数据结构往往会起到事半功倍的作用,因此熟悉每种数据结构并知道其特点对于程序员来说是非常重要的,而只知道这些是不够 ...