语言·基础

计算机简介

进制

1位(b)即1个二进制位(值为0或1)
1字节(B)=8b
一般以字节为最小的完整存储单元

编码/字符集

计算符号

符号含义
数值运算符含义
双目运算符
+
-
*
/除,整数除整数为整除
%求余
单目运算符++(加加)与–(减减),这里的x为一个变量
++x先自增,再运算
x++先运算,再自增
- -x先自减,再运算
x- -先运算,再自减
逻辑运算符含义
双目运算符
==相等
!=不等
>大于
>=大于等于
<小于
<=小于等于
单目运算符
!布尔运算,是(非0)变否(0),否(0)变是(1)
|| 双竖线或,有一个不为0,值为1
&&与(并且),有一个值为0,值为0
位运算符含义
双目运算符
&位与
| 单竖线位或
^按位异或
>>向右移位
<<向左移位
单目运算符
~ 波浪线按位取反
- 负号取补/按位取反+1,(正负符号变化,绝对值不变)
改变优先级符号
()括号里的算式,先自己算好
赋值(部分伴随逻辑)运算符含义
双目运算符
=赋值
+=加后赋值,a+=b 相当于 a=a+(b),下面类似
-=减后赋值
*=乘后赋值
/=除后赋值
%=余后赋值
>>=右移后赋值
<<=左移后赋值
&=位与后赋值
|=位或后赋值
^=按位异或后赋值
转义符号
\与后面的字符一起组成一个特殊符号
\n回车
\t制表符(tab)
等等还有其他各种各样的转义符
注意:
1./与\分清楚
2.位移命令不改变原数,如b=a>>2,a b都是int,这条命令不会改变a的值,而是将移位后的值传给b

符号里有的符号

  • 优先级有相同的,有不同的,不同语言的符号与优先级略有不同(但常用的就这些),可自己查询。建议不要写太复杂的算式,并适时用()明确优先级
  • 有的向右结合,有的向左。比如a=b=0,从左向右;a||b,从右向左

权限

用处:分配权限
所哟语言都适用基本规则
面向对象(涉及到跨代码块访问,有明确的权限 关键词)主要应用与面向对象编程,如C++,java

基本规则(作用范围)

使用方法:在内的可以访问在本代码块的和更外层代码块的,但不能跨越代码块访问
局部变量与全局变量

  1. 局部变量为该函数 或 复合语句内部的变量,全局变量为最外部的变量
  2. 当有局部变量与全局变量 名字相同时,局部变量有效,全局变量暂时无效

动态变量(auto)与静态变量(static)
在最外部的变量为静态变量

  1. 动态变量:注明auto 或 不注明auto与static,如(auto) int i,即定义i
  2. 动态变量仅能在局部使用,一离开就回收存储单元
  3. 静态变量:需注明static,未赋值则默认为0,如static int i=1,i的值即为1
  4. 静态变量一经定义,直至整个程序结束时回收存储单元
  5. 离开静态变量的有效范围后,暂时失效,待回到有效范围后激活,数值与之前一致,不再重新定义

面向对象

使用方法:在变量或函数定义时,在前面写上权限(不写则为默认权限)
被访问者的权限 和 访问者的位置 决定是否能正确访问

一般有三种权限,权限公开到私有

  • public(公共):
  • protected(受保护):
  • 默认-default(java的默认权限)
  • private(私有):

函数(方法)

定义:返回值 函数名(参数表){语句}

有时不需要返回值,可以不写值
函数名有多种写法

  1. java:驼峰写法(后面的单词的首字母大写,其他字母小写),如setName,isFull
  2. C++:C风格,在单词之间加下划线_
    参数表内 :”类型 变量名“为1组(不带引号),若有多组,用逗号,分隔
    需要直接返回的用return即可

变量

定义:数据类型 变量名(=值)
变量名不可与该语言的关键词相同

基础数据类型

中文数据类型存储(B)
字符char1(C/C++)或2(java)
整型inti
浮点数(双精度)double8
布尔值boolean1/8(只有1b)
浮点数(单精度)float4

还有 类:string的本质是一个类,但一般默认引入

类变量(面向对象)

class 类名{
	成员变量(实例变量)
	构造函数(构造器)
	其他函数
	
	类(静态)变量
	类(静态)函数
}
  • 这些不一定按照这个顺序写下来
  • 类名:采用驼峰写法
  • 构造器(constructor)、访问器&修改器(getter&setter) 是特殊的函数
  • 构造器:不需要返回值(可以说没有返回值,但实际上返回了地址),用于类实例的创建
  • 访问器&修改器:在成员变量不方便被直接访问时,用特别的访问函数
  • 访问器:get变量名;修改器:set变量名
  • 类变量(静态变量)、类函数(静态函数)有static修饰,使用 类名.名字 访问
    除成员变量,其他的均为函数,可以重载(函数名相同,参数不同)

数组[]

什么类型都可以有数组
用法:数据类型[] 变量名

语句/语句块

每条语句(除判断语句)后面都要有英文分号;
语句块用{}括起来,里面可以有多条语句

判断(逻辑)语句

一般在 if或循环 的()内,不需要;

用逻辑符号与 变量/数值 组成
在下面的分支语句与循环语句都要用到
比如a==ba||b

中断语句

break:直接跳出分支或循环
continue:在循环中不再执行下面的函数体,直接循环

循环语句

for(初始化;循环条件;语句3){循环体}

Created with Raphaël 2.2.0 开始 初始化 符合循环条件? 循环体 语句3 结束 yes no

while(循环条件){循环体}

Created with Raphaël 2.2.0 开始 确认? 我的操作 结束 yes no

do{循环体}while(循环条件)

Created with Raphaël 2.2.0 开始 循环体 符合循环条件? 结束 yes no
注意:1.for与while一般可以互相改写
	 2.他们的差别仅在于语句3存在时使用continue的差别,
	 		在改写后的while中用continue会跳过语句3,而for不会
	 3.while与do while的差别是进入do while时不会判断循环条件

分支语句

if()-else

if( ){ }
else if( ){ }
else{ }

从上到下符合哪个执行哪个后面的代码

switch()-case-default-break

switch(i)
case 常量1:{ };
case 常量2:{ };
…(可为多个)
default:{ };
}

从上到下i等于哪个常量执行哪个后面的代码,若无符合的则执行default后面的,default也没有就过了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值