NDK以及C语言基础语法(二)
一、字符串类:(属于类类型) -String (在C++中才有)
使用之前必学引入String 类型:
引入String头文件(系统的头文件): #include <string> ps:头文件不是string.h
1.定义字符串: String a="abc"; String b="abd";
2.字符串的比较:从第一个字符逐个从左至右比较;比较的是ASCII码的大小
从1来看: a==a,b==b,c>d 所以a>b;
3.字符串数组:字符串数组中的元素字符串没有‘\0’这样的结束位;
二、常量与变量
1、什么是常量:
值不能改变的量 1 1.2 固定的值
常量的类型:
(1) 数值型常量(整数、浮点数);
(2) 字符型常量(字符常量、转义字符常量、字符串常量)
(3) 符号常量(#define 符号常量名 常量值)
2、变量
(1)变量
在程序运行期间值可以改变的量成为变量;
变量的命名规则:C++规定标识符只能由字母、数字、下划线组成,且只能由字母和下划线开头,大小写敏感
不能使用关键字和保留字;
(2)常变量
加了const关键字的变量,程序运行时值不可被改变,称之为常变量
ps:常变量在定义时必须初始化,此后他的值不可被改变;
三、运算符
1、算术运算符:
+ - * / % ++ --
加 减 乘 除 整除求余 自加 自减
2、关系运算符:
> < = >= <= !=
大于 小于 等于 大于等于 小于等于 不等于
返回值为bool(c语言中返回值为0和1)
3、逻辑运算符:
&& || !
逻辑与 逻辑或 逻辑非
逻辑运算符前后两个值都是bool(c语言中必须是0和非0值);
&&:都为真才为真,只要又一个为假就为假;
|| : 只要有一个为真就为真;
!: 与当前相反;
4、位运算符:
<< >> & | ^ ~
按位左移 按位右移 按位与 按位或 按位异或 按位取反
原码 反码 补码
5、赋值运算符 =
(1)意义:将赋值运算符右边的值(包含表达式最后的运算结果)赋值给赋值运算符左边的变量;
A=1;
(2)赋值操作的右结合性,被赋值的每个操作数都具有相同的数据类型,那么C++允许将这多个赋值操作写在一个表达式里A=b=c=1;
(3)赋值操作具有低优先级 A=b+c;
左值和右值
为防止和相等操作混淆,造成逻辑错误,一般尽量在条件判断时将不可作为左值的内容放在左侧;
6、条件运算符:
条件语句 ?语句1 :语句2
当条件语句为真时,执行语句一并返回最终值,当条件语句为假的时候,执行语句二并返回最终值;
7、复合运算符
+= -= *= /= %=
<<= >>= &= ^= |=
使用复合赋值操作时,左操作数只计算里一次;而使用相似的长表达式时,该操作数则计算了两次,第一次作为右操作数,而第二次
则用做左操作数。除非考虑可能的性能价值,这个差别不是本质性的
a+=1; 直接对a的内存中的值+1
a=a+1; 先取出a中的值,然后+1,最后把得出的值放回;
8、其他运算符
逗号运算符: ,
指针运算符:*
引用运算符和取地址运算符: &
求字节数运算符:sizeof
强制类型转换运算符:(类型)或类型()
成员运算符: .
域运算符: : :
指向成员的运算符: ->
下标运算符: []
函数运算符:()
9、程序和语句:
(一)声明语句
声明常量、变量、常变量的语句
(二)执行语句
(1) 控制语句:
1)if (){....}else{......}(判断语句)
2)for(){...}(循环语句)
3)while () {......}(循环语句)
4)do{.....}while(循环语句)
5)continue; (结束本次循环语句)
6)break; (中止语句,中止switch或循环语句)
7)switch;(多分支选择语句)
8)goto (转向语句)
9)return (从函数返回语句)
(2)函数和流对象调用语句
(3)表达式语句
(三)空语句
(四)复合语句
进制:
二进制: 逢二进一
八进制: 逢八进一 0~7
十进制: (生活中常用的)0~9
十六进制:逢十六进一 0~ABCDEF
NDK以及C语言基础语法(二)的更多相关文章
- NDK以及C语言基础语法(一)
一.什么是NDK? Native Development Kit (本地开发工具包): NDK中提供了一系列的工具,帮助我们快速开发C/C++的动态库,并能自动将so文件和java文件一起打包成apk ...
- Smali语言基础语法
1.Smali语言基础语法-数据类型与描述符 smali中有两类数据类型:基本类型和引用类型.引用类型是指数组和对象,其它都是基础类型. 基本类型以及每种类型的描述符: Java类型 类型描述符 说明 ...
- Python 基础语法(二)
Python 基础语法(二) --------------------------------------------接 Python 基础语法(一) ------------------------ ...
- Java语言基础(二) Java关键字
Java语言基础(二) Java关键字 Java关键字比较多,我就不列举出来了,只记录一些常用的小知识点: ①Java的关键字只有小写. ②then.sizeof都不是Java的关键字,熟悉C++的程 ...
- Java语言基础(二)
Java语言基础(二) 一.变量续 (1).变量有明确的类型 (2).变量必须有声明,初始化以后才能使用 (3).变量有作用域,离开作用域后自动回收 变量作用域在块内有效 (4).在同一定义域中变量不 ...
- Go语言基础(二)
Go语言基础(二) 跟着上篇,继续看Go基础 一.变量作用域 与C类似,有全局变量.局部变量.形参之分 package main import "fmt" // 全局变量 var ...
- web前端学习python之第一章_基础语法(二)
web前端学习python之第一章_基础语法(二) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...
- C语言基础语法
#include <stdio.h> int main() { int age; printf("input your age"); scanf("%d&qu ...
- 黑马程序员——OC语言基础语法 面向对象的思想
Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结)(一)基础语法 1)关键字 @interface.@implementati ...
随机推荐
- strcpy_s 函数的用法
strcpy_s和strcpy()函数的功能几乎是一样的. strcpy函数,就象gets函数一样,它没有方法来保证有效的缓冲区尺寸,所以它只能假定缓冲足够大来容纳要拷贝的字符串.在程序运行时,这将导 ...
- webapi 初识 net
1.新建一个webapi 项目. 2.新建筛选器文件,用户在接口执行前后进行特性操作. public class MyActionWebApiAttribute : ActionFilterAttri ...
- RabbitMq解决分布式事物
一.RabbitMQ解决分布式事务思路: 案例: 经典案例,以目前流行点外卖的案例,用户下单后,调用订单服务,让后订单服务调用派单系统通知送外卖人员送单,这时候订单系统与派单系统采用MQ异步通讯. 二 ...
- POJ 1961 Period KMP算法之next数组的应用
题意:给一个长度为n的字符串,如果它长度为l(2 <= l <= n)的前缀部分是由一些相同的字符串相接而成,输出前缀的长度l和长度为l时字符串重复的最大次数. 例如字符串为: aaaba ...
- BZOJ 3672 NOI 2014 购票
题面 Description 今年夏天,NOI在SZ市迎来了她30周岁的生日.来自全国 n 个城市的OIer们都会从各地出发,到SZ市参加这次盛会. 全国的城市构成了一棵以SZ市为根的有根树,每个城市 ...
- 记录一次eclipse的错误:“server tomcat v7.0 server at localhost was unable to start within 45 seconds”的问题解决思路
如果配到上述问题,可以参考网上查找的方法,如下: http://stackoverflow.com/questions/6468520/server-tomcat-v6-0-server-at-loc ...
- MyBatis动态SQL底层原理分析 与 JavaScript中的Date对象,以及UTC、GMT、时区的关系
http://fangjian0423.github.io/categories/mybatis/ http://xtutu.me/the-date-object-in-js/
- 从 Git Gui 管理的Repository(库) 提交更改到 Bonobo服务器管理的Repository(库)
要提交更改到Bonobo服务器管理的某个Repository(库),必须先得在Bonobo服务器上有此Repository(库)——简直就是废话.那么怎么才能这个Repository(库)变出来呢?其 ...
- angular使用canvas操作时报错
最近,用 angular 前端框架为应用登录新增图形验证码认证,由于没有现成的插件,于是便使用canvas+js操作,也是可以正常使用,但是在编译阶段却有个报错: ERROR in src/app/l ...
- 【hibernate】Hibernate SQL 方言(hibernate.dialect)
参考如下: RDBMS Dialect DB2 org.hibernate.dialect.DB2Dialect DB2 AS/400 org.hibernate.dialect.DB2400Dial ...