c语言基础学习01
=============================================================================
每一种语言都有其独特的语法规则与语言定义。
指令是对计算机进行程序控制的最小单位。
所有的指令的集合称为计算机的指令系统。
程序是为完成一项特定任务而用某种语言编写的一组指令序列。
=============================================================================
机器语言----->汇编语言----->高级语言
010101 编译器 标识符 编译器 C语言、C++、Java等
---------------------------- --------------------------
面向机器 面向人
汇编语言和机器语言都是面向机器的,机器不同,语言也不同。
高级语言到的出现使程序员摆脱了计算机硬件的限制,把主要精力放在了程序设计上,不在关注低层的计算机硬件。
C语言的解决问题的方法是:分析出解决问题所需要的步骤,把程序看作是数据被加工的过程。
基于这类方法的程序设计语言成为面向过程的语言。C语言就是这种面向过程的程序设计语言。
C语言优点:代码量小、执行速度快、功能强大、编程自由。
C语言缺点:编写代码实现周期长、可移植性较差、过于自由,经验不足易出错、对平台库依赖较多。
=============================================================================
学会数理化,走遍天下都不怕;
学会C/C++语言,走遍全球都不怕。
(1)C语言可以写网站后台程序。
(2)C语言可以写出绚丽的GUI界面。
(3)C语言可以专门针对某个主题写出功能强大的程序库,然后供其他程序方便使用,从而让其他程序节省开发时间。
(4)C语言可以写出大型游戏的引擎。
(5)C语言可以写出另一个语言来。
(6)C语言可以写操作系统和驱动程序,并且只能用C语言编写,Linux操作系统的全部源代码都可以从网上得到,要深入了解操作系统的运行秘密,懂C语言,就能看懂。
(7)任何设备只要配置了微处理器,就都支持C语言。从微波炉到手机,都是由C语言技术来推动的。
=============================================================================
C语言优点:简洁、紧凑、使用方便、灵活、功能强大、执行效率高;表达力强、移植性好
C语言仅有32个关键字,9种控制语句
C语言在不如人的地方:
比如字符串处理方面,就不如Perl语言;
比如数值计算方面,就不如Fortran语言;
比如人工智能方面,就不如Lisp语言。
=============================================================================
32个关键字:(由系统定义,不能重作其它定义)
auto break case char const
continue default do double else
enum extern float for goto
if int long register return
short signed sizeof static struct
switch typedef unsigned union void
volatile while
=============================================================================
9种控制语句:
if( )~else~
for( )~
while( )~
do~while( )
continue
break
switch
goto
return
=============================================================================
34种运算符:
算术运算符:+ - * / % ++ --
关系运算符:< <= == > >= !=
逻辑运算符:! && ||
位运算符 :<< >> ~ | ^ &
赋值运算符:= 及其扩展
条件运算符:?:
逗号运算符:,
指针运算符:* &
求字节数 :sizeof
强制类型转换:(类型)
分量运算符:. ->
下标运算符:[]
其它 :( ) -
=============================================================================
学习C语言的方法和秘诀:
1、多动手少求人
2、多学习优秀代码(吸星大法)
3、多以人类的思考方法来类比计算机,用人类的思维转换成计算机的处理方法
(如果自己都想不通这个事情怎么做,就不要让计算机去做)
学习C语言的目标:
1、学会C语言(倒背如流,运用如飞)
2、掌握编程的技巧与简单的算法
3、搞定世界500强C语言的面试部分
=============================================================================
c语言基础学习01的更多相关文章
- Golang 汇编asm语言基础学习
Golang 汇编asm语言基础学习 一.CPU 基础知识 cpu 内部结构 cpu 内部主要是由寄存器.控制器.运算器和时钟四个部分组成. 寄存器:用来暂时存放指令.数据等对象.它是一个更快的内存. ...
- D02-R语言基础学习
R语言基础学习——D02 20190423内容纲要: 1.前言 2.向量操作 (1)常规操作 (2)不定长向量计算 (3)序列 (4)向量的删除与保留 3.列表详解 (1)列表的索引 (2)列表得元素 ...
- D01-R语言基础学习
R语言基础学习——D01 20190410内容纲要: 1.R的下载与安装 2.R包的安装与使用方法 (1)查看已安装的包 (2)查看是否安装过包 (3)安装包 (4)更新包 3.结果的重用 4.R处理 ...
- D03——C语言基础学习PYTHON
C语言基础学习PYTHON——基础学习D03 20180804内容纲要: 1 函数的基本概念 2 函数的参数 3 函数的全局变量与局部变量 4 函数的返回值 5 递归函数 6 高阶函数 7 匿名函数 ...
- D03-R语言基础学习
R语言基础学习——D03 20190423内容纲要: 1.导入数据 (1)从键盘输入 (2)从文本文件导入 (3)从excel文件导入 2.用户自定义函数 3.R访问MySQL数据库 (1)安装R ...
- go语言基础学习
go基础学习,面向对象-方法在Go语言中,可以给任意自定义类型(包括内置类型,但不包括指针类型)添加相应的方法 使用= 和:=的区别: // = 使用必须使用先var声明例如: var a a=100 ...
- C# 语言基础学习路线图
一直以来,对于很多知识点都是存于收藏夹中,随着时间地变更,收藏夹中链接也起来越多,从未进行整理,也很零散,所以想对曾经遇到并使用过的一些知识形成文档,作为个人知识库的一部分. 就从C# 语言基础开始, ...
- C语言基础学习基本数据类型-变量的命名
变量的命名 变量命名规则是为了增强代码的可读性和容易维护性.以下为C语言必须遵守的变量命名规则: 1. 变量名只能是字母(A-Z,a-z),数字(0-9)或者下划线(_)组成. 2. 变量名第一个字母 ...
- c语言基础学习06
=============================================================================涉及到的知识点有:1.C语言库函数.字符输入函 ...
随机推荐
- 从头开始搭建一个Spring boot+ActiveMQ高可用分布式环境
*:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...
- JS画几何图形之一【直线】
JS画图的想法经过大脑的时候,觉得有点意思,所以就实践了一番.JS画图为系列文章,本是讲点.线和面 先看样例:http://www.zhaojz.com.cn/demo/draw5.html 一.点 ...
- elasticsearch 源码本地环境搭建
elasticsearch6.0.0 源码本地环境搭建步骤如下: 1.资源准备 ElasicSearch版本:6.0.0: https://github.com/elastic/elasticsear ...
- 关于git的一些理论知识
一.什么是版本控制器 好多刚用git的coder一说起git,就随口会说出版本控制器嘛,我问那是干嘛的,大部分人就回答上传代码的.然后会用,但是有些理论你问他们他们就不知道了,比如不是代码的文件就不能 ...
- js代码细嚼慢咽
全局变量的梗 例1: 对于var 的理解:将该变量声明在当前的作用域中,或者说执行上下文中. function add() { result = 3; //result变量即是隐喻全局变量 } add ...
- Zabbix自动发现监控Tomcat进程
1.编辑自动发现脚本 自动发现脚本只支持JSON格式 #!/usr/bin/env python # -*- coding:utf-8 -*- import commands import psuti ...
- centOS7 mini配置linux服务器(四) 配置jdk
这里简单写一下centos7Mini 安装jdk1.8的全过程. 一.下载jdk,linux版本. 地址:http://www.oracle.com/technetwork/java/javase/ ...
- Elastic 技术栈之 Filebeat
Elastic 技术栈之 Filebeat 简介 Beats 是安装在服务器上的数据中转代理. Beats 可以将数据直接传输到 Elasticsearch 或传输到 Logstash . Beats ...
- 【转】java.lang.NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index;
最近在配置最新的ssh(struts2.3.16.3+hibernate4.3.7+spring4.1.2)的时候遇到的这个错误提示,后来在网上找了半天都不能解决,虽然有个说法是model对象用这样@ ...
- 微信红包店小程序开发过程中遇到的问题 php获取附近周边商家 显示最近商家
最近公司在做一个项目就是微信红包店.仿照的是微信官方在做的那个红包店的模式.客户抢红包,抢到以后到店消费,消费以后就可以拿到商家的红包了. 项目中的两个难点: 1通过小程序来发红包 这个之前在开发语 ...