C语言笔记1
第一部分 计算机常识
1,人与计算机交流
2,人机交互方式
3,计算机的组成结构
4,计算机的系统组成
5,进制
6,程序和指令
第二部C开发环境
1 人与计算机交流
现实中人与人交流靠语言,那么人与计算机交流也靠语言叫计算机语言。不管是人类语言还是计算机语言都有相同的地方。语言都是由语言定义和语法规则构成。语言定义就像单词,语法规则是指语言定义的排列顺序。
人的语言和计算机语言的区别:人类语言允许歧义,例如“为人民服务”“为人民服雾”,人交流的时候可听可不听,而计算机语言则要求绝对精确,对指令是无条件执行。
2 人机交互方式:命令行,图形化,自然交互(语音、触控)。



3 计算机的组成结构

3 计算机的系统组成

4 二进制
计算机采用二进制来表示和存放信息。因为电流的开和关正好表示两种状态,从而奠定现代计算机的发展。

1个灯有2种可能;
2个灯有4种可能;
。。。。。。。
8个灯有256种可能;
一组灯不同的开关表示一串0和1。所以计算机存储的最小的单位是位(byte),为了表示的方便用8个位去表示1个字节(bytes).1个字节就有256种可能,也就是说可以表示256种信息。
1B=8位
1k=1024byte
1M=1024K
1G=1024M
1T=1024G
计算机采用二进制、八进制、十进制、十六进制去表示数。
1,掌握不同进制之间换算;
2,同一进制,加减算法;
5 程序和指令
程序:一堆数据和指令的集合。
指令用于表示计算机执行什么动作,机器指令的格式:操作码和操作数。
电脑X86,手机ROM说的就是他们采用的指令集。同样的产品,可能有不同的指令集。例 如甲厂 0001代表加 乙厂0010代表加。
编译器:专门用于把现代高级语言翻译成计算机可执行的机器语言。
第二部C开发环境
开发环境(IDE)用于开发c程序的集成环境,集成了可以编写,编译,调试c程序等功能。
各操作系统平台的IDE分别是:
Windows-----vs2010
Mac-------------xcode
Unix/linux-----vim
跨平台IDE有:QT,code:blocks,eclipce.
技能之一:
在windows/linux平台下利用记事本,编写helloworld,并运行。
Window:

Linux:

Vs2013创建项目
1,源文件---一般把变量、函数、常量放在头文件,从而实现代码的复用。
2,头文件---程序的主要实现
3,预处理指令-----#include 将头文件或任意文件类型包含到源文件中去。
创建项目的注意事项:
1,定义入口点,
2,C严格区分字母大小写的
3,C语言文件 .h .c ,c++的文件是.cpp,c++可以兼容c
4,注释不会影响程序大小,编译器忽略注释
5,Include,<>代表系统文件,””代表自定义文件
6,C文件开始结束,第一个字符开始,最后一个字符结束
要掌握的技能
C语言实现命令行编程
C语言实现MFC编程
C语言笔记1的更多相关文章
- R语言笔记
R语言笔记 学习R语言对我来说有好几个地方需要注意的,我觉得这样的经验也适用于学习其他的新的语言. 语言的目标 我理解语言的目标就是这个语言是用来做什么的,为什么样的任务服务的,也就是设计这个语言的动 ...
- R语言笔记4--可视化
接R语言笔记3--实例1 R语言中的可视化函数分为两大类,探索性可视化(陌生数据集,不了解,需要探索里面的信息:偏重于快速,方便的工具)和解释性可视化(完全了解数据集,里面的故事需要讲解别人:偏重全面 ...
- Scala语言笔记 - 第一篇
目录 Scala语言笔记 - 第一篇 1 基本类型和循环的使用 2 String相关 3 模式匹配相关 4 class相关 5 函数调用相关 Scala语言笔记 - 第一篇 最近研究了下scala ...
- Go 语言笔记
Go 语言笔记 基本概念 综述 Go 语言将静态语言的安全性和高效性与动态语言的易开发性进行有机结合,达到完美平衡. 设计者通过 goroutine 这种轻量级线程的概念来实现这个目标,然后通过 ch ...
- 014-预处理指令-C语言笔记
014-预处理指令-C语言笔记 学习目标 1.[掌握]枚举 2.[掌握]typedef关键字 3.[理解]预处理指令 4.[掌握]#define宏定义 5.[掌握]条件编译 6.[掌握]static与 ...
- 013-结构体-C语言笔记
013-结构体-C语言笔记 学习目录 1.[掌握]返回指针的函数 2.[掌握]指向函数的指针 3.[掌握]结构体的声明 4.[掌握]结构体与数组 5.[掌握]结构体与指针 6.[掌握]结构体的嵌套 7 ...
- 011-指针(上)-C语言笔记
011-指针(上)-C语言笔记 学习目标 1.[掌握]字符串常用函数 2.[掌握]指针变量的声明 3.[掌握]指针变量的初始化 4.[掌握]函数与指针 5.[掌握]指针的数据类型 6.[掌握]多级指针 ...
- 010-字符串-C语言笔记
010-字符串-C语言笔记 学习目标 1.[掌握]二维数组的声明和初始化 2.[掌握]遍历二维数组 3.[掌握]二维数组在内存中的存储 4.[掌握]二维数组与函数 5.[掌握]字符串 一.二维数组的声 ...
- 009-数组-C语言笔记
009-数组-C语言笔记 学习目标 1.[掌握]数组的声明 2.[掌握]数组元素的赋值和调用 3.[掌握]数组的初始化 4.[掌握]数组的遍历 5.[掌握]数组在内存中的存储 6.[掌握]数组长度计算 ...
- 008-进制-C语言笔记
008-进制-C语言笔记 学习目标 1.[掌握]include预处理指令 2.[掌握]多文件开发 3.[了解]认识进制 4.[掌握]进制之间的互相转换 5.[掌握]原码,反码,补码 6.[掌握]位运算 ...
随机推荐
- UI自动化(四)css样式
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- Java 基础 - 集合
Set 集合 Set 集合通常不能记住元素的添加顺序.Set 集合不允许包含相同的元素. HashSet 是 Set 接口的实现类,按照 Hash 算法存储集合中的元素.HashSet 不是同步的,如 ...
- 【C++】C++未定义行为
未定义行为:语言标准没有规定,编译器自行决定的行为,在不同的编译器上有时会有不同的结果. 1: int i=0; i=i++; 我们知道i++会返回i之后再自增,那么程序运行完i为多少? 解释一:i= ...
- 【Bilinear interpolation】双线性插值详解(转)
最近在做视频拼接的项目,里面用到了图像的单应性矩阵变换,在最后的图像重映射,由于目标图像的坐标是非整数的,所以需要用到插值的方法,用的就是双线性插值,下面的博文主要是查看了前辈的博客对双 ...
- 个人爱好:idea 项目结构呈现风格
- C/C++.判断文件是否存在(_access)
1. int _access(char* path,int mode)头文件<io.h>功能:确定文件或文件夹的访问权限.如果指定的存取方式有效,则函数返回0,否则函数返回-1. 参数pa ...
- springboot aop 不生效原因解决
最近参照资料创建Springboot AOP ,结果运行后aop死活不生效. 查明原因: 是我在创建AOP类时选择了Aspect类型,创建后才把这个文件改为Class类型,导致一直不生效, 代码配置这 ...
- 字节顺序标记——BOM,Byte Order Mark
定义 BOM(Byte Order Mark),字节顺序标记,出现在文本文件头部,Unicode编码标准中用于标识文件是采用哪种格式的编码. 介绍 UTF-8 不需要 BOM,尽管 Unico ...
- Java中使用HTTP阻塞式调用服务器API
应用场景:前端页面点击刷新,调用服务器A上Java接口,然后A调用服务器B的后台Python接口实时刷新后台数据库. 在这个场景中会涉及到两个问题:异步,Python服务器压力 (一)解决Python ...
- 『Python CoolBook:Collections』数据结构和算法_容器型value字典&顺序字典
一.collections.defaultdict:多值映射字典 defaultdict省去了初始化容器的过程,会默认value对象为指定类型的容器 指定list时可以使用.append, from ...