No.7十六届蓝桥杯备战|单目操作符|getchar|putchar(C++)

单⽬操作符

前⾯介绍的操作符都是双⽬操作符,即有2个操作数。除此之外还有⼀些操作符只有⼀个操作数,被称为单⽬操作符。如 ++、–、+(正)、-(负) 就是单⽬操作符。

++和–

++是⼀种⾃增的操作符,⼜分为前置++和后置++,–是⼀种⾃减的操作符,也分为前置–和后置–

  • 前置 ++ 或者后置 ++ ,都是让操作数⾃增1的
  • 前置 – 或者后置 – ,都是让操作数⾃减1的
前置++和后置++
//案例1  
int x = 10;  
int a = ++x; //++的操作数是x,是放在x的前⾯的,就是前置++  
cout << x << " " << a << endl;  

//案例2  
int x = 10;  
int a = x++; //++的操作数是x,是放在x的后⾯的,就是后置++  
cout << x << " " << a << endl;

前置++:先+1,后使⽤
后置++:先使⽤,后+1

前置–和后置–
//案例1  
int y = 10;  
int b = --y; //--的操作数是y,是放在y的前⾯的,就是前置--  
cout << y << " " << b << endl;  

//案例2  
int y = 10;  
int b = y--; //--的操作数是y,是放在y的后⾯的,就是后置--  
cout << y << " " << b << endl;

前置–:先-1,后使⽤
后置–:先使⽤,后-1

+和-

这⾥的 + 是正号, - 是负号,都是单⽬操作符。
运算符 + 对正负值没有影响,是⼀个完全可以省略的运算符,但是写了也不会报错。

int a = +10;    // 等价于 int a = 10;

运算符 - ⽤来改变⼀个值的正负号,负数的前⾯加上 - 就会得到正数,正数的前⾯加上 - 会得到负数。

int a = 10;  
int b = -a;  
int c = -10;  
cout << b << c << endl; // 这⾥的b和c都是-10  

int a = -10;  
int b = -a;  
cout << b << endl;      // 这⾥的b是10

C++输入输出

getchar和putchar

getchar() 和 putchar() 是属于C语⾔的库函数,C++是兼容C语⾔的,所以C++中只要正确包
含头⽂件也可以正常使⽤这两个函数。

getchar

函数原型如下:

int getchar ( void );

getchar() 函数返回用户从键盘输⼊的⼀个字符,使⽤时不带有任何参数。
程序运⾏到这个命令就会暂停,等待用户从键盘输⼊,等同于使⽤ cin 或 scanf() ⽅法读取⼀个字符。
它的原型定义在头⽂件

#include   
#include   

using namespace std;  

int main()  
{  
	int ch;
	
	ch = getchar();  
	cout << ch << endl;  
	cout << (char)ch << endl;  
	
	return 0;  
}

getchar() 不会忽略起⾸的空⽩字符,总是返回当前读取的第⼀个字符,⽆论是否为空格。
如果读取失败,返回常量EOF ,由于EOF通常是 -1 ,所以返回值的类型要设为int ,⽽不是
char 。
如何让 getchar() 函数读取失败,返回-1呢?其实需要在输⼊字符之前,直接按Ctrl+z 就可
以。

#include   
#include   

using namespace std;  

int main()  
{  
	int ch;  
	
	ch = getchar();  
	cout << ch << endl;  
	
	return 0;  
}

No.7十六届蓝桥杯备战|单目操作符|getchar|putchar(C++)_第1张图片

不输入任何字符之前,直接按ctrl+Z就使得getchar()函数读取失败
getchar()通常和putchar()是⼀对⼉,配合使⽤的。

putchar

函数原型如下:

int putchar( int character );

putchar() 函数将它的参数字符输出到屏幕,它的原型定义在头⽂件

#include   

int main()  
{  
	int ch = 0;  
	
	ch = getchar();  
	putchar(ch);  
	
	return 0;  
}

操作成功时, putchar() 返回输出的字符,否则返回常量EOF 。

你可能感兴趣的:(蓝桥杯备考,蓝桥杯,c++,职场和发展)