(六十七)前缀、后缀运算符号在其他地方的使用

简介:

如i++,是后缀; ++i,是前缀。

这种可以用在其他地方,比如指针。

代码1:


#include<iostream>
#include<string>

int main()
{
	using namespace std;
	int i=1;
	string a = "abcdefg";
	cout << a[0] << endl;	//显示string类字符串的第一个字母
	cout << char(++a[0]) << endl;	//++a[0]和a[0]+1是等价的,显示这个字符串的第二个字母,
	//之所以用char括起来,是因为将之强制转换为字符显示
	system("pause");
	return 0;
}


输出:

a
b
请按任意键继续. . .

注意:

①a[0]是一个整体,所以需要++a[0]或者a[0]++

 

②因为是++a[0],所以是先加再显示。

 

③a[0]实际上是一个内存地址,因此才可以操纵地址偏移。另外需要注意的是,a[0]是一个字符宽,所以偏移的时候也是偏移一个字符宽

 

 

代码2:


#include<iostream>
#include<string>

int main()
{
	using namespace std;
	int i=1;
	string a = "abcdefg";
	cout << a[0] << endl;	//显示string类字符串的第一个字母
	cout << char(a[0]++) << endl;	
	cout << char(a[0]++) << endl;	
	cout << a[0] << endl;
	//之所以用char括起来,是因为将之强制转换为字符显示
	system("pause");
	return 0;
}

输出:


a
a
b
c
请按任意键继续. . .

注意:

①在代码2里。我们使用了a[0]++,因为后缀的原理,先输出,再加1。

于是在第一次cout << char(a[0]++) << endl;里面,输出的依然是a;

第二次输出的才是b;

而第三次没有使用后缀,但由于第二次已经加过了(即地址偏移了),所以cout<<a[0]<<endl;输出的是c。

 

②依然需要注意,字符串名,实际上是字符串的地址,a是整体"abcdefg"的地址,而a[0]是一个字符的地址,且是第一个字符。但偏移后就不一定是第一个字符a了,可能是b或者c。根据偏移量而定。

 


目录
相关文章
|
9月前
|
JavaScript 前端开发 开发者
正则表达式深度解析:斜杠的妙用
【2月更文挑战第29天】
1241 0
正则表达式深度解析:斜杠的妙用
数组外面包了引号,怎么去掉外面的引号,变成原来的数组
数组外面包了引号,怎么去掉外面的引号,变成原来的数组
62 0
|
2月前
|
编译器 C语言
【C语言】常量的 “前缀和后缀” 大通关!
在C语言中,常量的前缀和后缀用于明确指定常量的类型和进制系统。前缀主要用于区分不同进制的数字常量,而后缀则用于区分不同类型的整数和浮点数。正确使用前缀和后缀,可以提高代码的可读性和可维护性,确保编译器正确地理解和处理常量。
75 1
|
5月前
|
API Windows
用MASM32来DIY判断字符串1是否为字符串2的子串的函数演示代码(源码+exe)(应用lstrcpyn()和lstrcmp(),区分大小写)
用MASM32来DIY判断字符串1是否为字符串2的子串的函数演示代码(源码+exe)(应用lstrcpyn()和lstrcmp(),区分大小写)
如何根据文件夹中文件,生成对应名字的图片,名称一样的路径,这里用到了变量,将集合定义在外面,字符串拼接,正则表达式截取.jpg文件
如何根据文件夹中文件,生成对应名字的图片,名称一样的路径,这里用到了变量,将集合定义在外面,字符串拼接,正则表达式截取.jpg文件
|
8月前
|
Java
JAVA工具类匹配重复或者连续的字符和符号
JAVA工具类匹配重复或者连续的字符和符号
|
9月前
如何去掉字符串中文括号及其内部的内容三种方式
如何去掉字符串中文括号及其内部的内容三种方式
334 0
|
9月前
|
C语言 C++
每天一道C语言编程:(去掉:双斜杠注释,去掉空格)
每天一道C语言编程:(去掉:双斜杠注释,去掉空格)
65 0
|
C语言
学C的第二天(变量‘补充’;简单了解常量,字符串,转义字符,注释,if选择语句,while循环语句)(1)
4.4*变量的使用(上期继续补充): 字符类型: %c - 字符类型 %d - 整型 %s - 字符串 %f - float类型 %lf - double类型
128 0
Java字符串去掉空格的几种方法
Java字符串去掉空格的几种方法