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 ...
随机推荐
- Hbuilder 快捷键
最近在学习javaweb 在学前端的时候用到了一款国产编辑器 很棒 Hbuilder 快捷键 Ctrl + d 删除整行内容 Ctrl + Shift +R ...
- 牛客网 牛客小白月赛2 D.虚虚实实-无向图判欧拉路径
D.虚虚实实 链接:https://www.nowcoder.com/acm/contest/86/D 这个题是无向图判欧拉路径,首先要判是否连通,然后再判欧拉路径就可以,板子题. 板子来源: ...
- 关于bug的沟通
关于BUG的沟通 一个人要去做一件事情,一般来说是按照自己的意愿去做的,如果不是自己想做而是被要求这么做的话,心里一定会留下点不愉快,特别是那种有自信有自己主见的人,比如说开发人员,当测试人员发现一个 ...
- luogu P1027 Car的旅行路线
题目描述 又到暑假了,住在城市A的Car想和朋友一起去城市B旅游.她知道每个城市都有四个飞机场,分别位于一个矩形的四个顶点上,同一个城市中两个机场之间有一条笔直的高速铁路,第I个城市中高速铁路了的单位 ...
- libcurl多线程超时设置不安全
from http://blog.csdn.net/sctq8888/article/details/10031219 (1), 超时(timeout) libcurl 是 一个很不错的库,支持htt ...
- Jsp2.0自定义标签(第二天)——自定义循环标签
今天是学习自定义标签的第二天,主要是写一个自定义的循环标签. 先看效果图: 前台页面Jsp代码 <%@ page language="java" contentType=&q ...
- iphone/iOS 访问本地数据库sqlite3
Phone也支持访问本地数据库Sqlite 3.这里简单的介绍一下iPhone上Sqlite 3的使用方法. 首先需要在项目中引用Sqlite 3的开发包,下面是在iPhone SDK 3.0下的目录 ...
- vim批量缩进功能
注释符号:" :set tabstop=4 设定tab宽度为4个字符 :set shiftwidth=4 设定自动缩进为4个字符 :set expandtab 用space替代tab的输入 ...
- 访问C指针的指针
#include <stdio.h> #include <stdlib.h> int main(int argc,char **argv){ void* vp; void** ...
- 2016.7.12 在navicat中用sql语句建表
参考资料: http://jingyan.baidu.com/article/f0e83a25a8c4b022e5910116.html 即新建query,然后run. (1)点击要新建表的位置,选择 ...