什么是流操作符,位操作符?
2013-08-16
展开全部
流操作符是指与输入输出有关的操作符
参考 http://www.cppblog.com/deadpunk/articles/10162.html
C++包括以下流操作符
boolalpha Turns on boolapha flag. Input/Output
dec Turns on dec flag. Input/Output
endl Output a newline character and Output
flush the stream.
ends Output a null. Output
fixed Turns on fixed flag. Output
flush Flush a stream. Output
hex Turns on hex flag. Input/Output
internal Turns on internal flag. Output
left Turns on left flag. Output
nobooalpha Turns off boolalpha flag. Input/Output
noshowbase Turns off showbase flag. Output
noshowpoint Turns off showpoint flag. Output
noshowpos Turns off showpos flag. Output
noskipws Turns off skipws flag. Input
nounitbuf Turns off unitbuf flag. Output
nouppercase Turns off uppercase flag. Output
oct Turns on oct flag. Input/Output
resetiosflags Turn off the flags specified in f. Input/Output
(fmtflags f)
right Turns on right flag. Output
scientific Turns on scientific flag. Output
setbase(int base) Set the number base to base. Input/Output
setfill(int ch) Set the fill character to ch. Output
setiosflags Turn on the flags specified in f. Input/output
(fmtflags f)
setprecision Set the number of digits of precision. Output
(int p)
setw(int w) Set the field width to w. Output
showbase Turns on showbase flag. Output
showpoint Turns on showpoint flag. Output
showpos Turns on showpos flag. Output
skipws Turns on skipws flag. Input
unitbuf Turns on unitbuf flag. Output
uppercase Turns on uppercase flag. Output
ws Skip leading white space. Input
位操作符:
参考 http://www.programbbs.com/doc/3012.htm
C++位操作包括两种:传统的C语言方式的位操作和C++中利用bitset容器的位操作
一、传统的C方式位操作:
1.基本操作:
使用一个unsigned int变量来作为位容器。
2.操作符:
| 按位或操作符:result=exp1|exp2;当exp1和exp2中对应位中至少有一个为1时,result中对应位为1,否则为0。
& 按位与操作符::result=exp1&exp2;当exp1和exp2中对应位全为1时,result中对应位为1,否则为0。
^ 按位异或或操作符:result=exp1^exp2;当exp1和exp2中对应位不相同时,result中对应位为1,否则为0。
~ 反转操作符:将位容器中的所有位都反转,1变为0,0变为1。
<< 按位左移操作符:exp<<n,将容器中所有的位向左移n位,空出的位用0填充。
>> 按位右移操作符:exp>>n,将容器中所有的位向右移n位,空出的位用0填充。
|=,&=,^= 分别对应|&^三种操作符的复合操作符。
3.常用操作
这里我们假设有一个result的unsigned int变量用来储存32个学生的成绩(通过和不通过分别用0和1),这样result就有33位(result从右至左,从0开始计算位数,在这个例子中0位被浪费)。
(a) 将第27位设置为及格(设作1)其他位不变:
result|=(1<<27) //任意的位值与1作按位或操作其值为1,而与0作按位与操作其值不变
(b) 将第27位设置成不及格(设为0)。
result&=~(1<<27) //任意的位值与0作按位与操作其值为0,而与1作按位与操作其值不变
(c) 反转第27位的值。
result^=(1<<27) //任意的位值与1作按位异或操作其值为1,而与0作按位异与操作其值不变
参考 http://www.cppblog.com/deadpunk/articles/10162.html
C++包括以下流操作符
boolalpha Turns on boolapha flag. Input/Output
dec Turns on dec flag. Input/Output
endl Output a newline character and Output
flush the stream.
ends Output a null. Output
fixed Turns on fixed flag. Output
flush Flush a stream. Output
hex Turns on hex flag. Input/Output
internal Turns on internal flag. Output
left Turns on left flag. Output
nobooalpha Turns off boolalpha flag. Input/Output
noshowbase Turns off showbase flag. Output
noshowpoint Turns off showpoint flag. Output
noshowpos Turns off showpos flag. Output
noskipws Turns off skipws flag. Input
nounitbuf Turns off unitbuf flag. Output
nouppercase Turns off uppercase flag. Output
oct Turns on oct flag. Input/Output
resetiosflags Turn off the flags specified in f. Input/Output
(fmtflags f)
right Turns on right flag. Output
scientific Turns on scientific flag. Output
setbase(int base) Set the number base to base. Input/Output
setfill(int ch) Set the fill character to ch. Output
setiosflags Turn on the flags specified in f. Input/output
(fmtflags f)
setprecision Set the number of digits of precision. Output
(int p)
setw(int w) Set the field width to w. Output
showbase Turns on showbase flag. Output
showpoint Turns on showpoint flag. Output
showpos Turns on showpos flag. Output
skipws Turns on skipws flag. Input
unitbuf Turns on unitbuf flag. Output
uppercase Turns on uppercase flag. Output
ws Skip leading white space. Input
位操作符:
参考 http://www.programbbs.com/doc/3012.htm
C++位操作包括两种:传统的C语言方式的位操作和C++中利用bitset容器的位操作
一、传统的C方式位操作:
1.基本操作:
使用一个unsigned int变量来作为位容器。
2.操作符:
| 按位或操作符:result=exp1|exp2;当exp1和exp2中对应位中至少有一个为1时,result中对应位为1,否则为0。
& 按位与操作符::result=exp1&exp2;当exp1和exp2中对应位全为1时,result中对应位为1,否则为0。
^ 按位异或或操作符:result=exp1^exp2;当exp1和exp2中对应位不相同时,result中对应位为1,否则为0。
~ 反转操作符:将位容器中的所有位都反转,1变为0,0变为1。
<< 按位左移操作符:exp<<n,将容器中所有的位向左移n位,空出的位用0填充。
>> 按位右移操作符:exp>>n,将容器中所有的位向右移n位,空出的位用0填充。
|=,&=,^= 分别对应|&^三种操作符的复合操作符。
3.常用操作
这里我们假设有一个result的unsigned int变量用来储存32个学生的成绩(通过和不通过分别用0和1),这样result就有33位(result从右至左,从0开始计算位数,在这个例子中0位被浪费)。
(a) 将第27位设置为及格(设作1)其他位不变:
result|=(1<<27) //任意的位值与1作按位或操作其值为1,而与0作按位与操作其值不变
(b) 将第27位设置成不及格(设为0)。
result&=~(1<<27) //任意的位值与0作按位与操作其值为0,而与1作按位与操作其值不变
(c) 反转第27位的值。
result^=(1<<27) //任意的位值与1作按位异或操作其值为1,而与0作按位异与操作其值不变
2013-08-16
展开全部
位操作符允许您精细的操作数据的每一个位。
Table 7-2. Bitwise Operators(表7-2位操作符)
example name result
$a & $b And Bits that are set in both $a and $b are set.?/FONT>
$a | $b Or Bits that are set in either $a or $b are set.?/FONT>
~ $a?/FONT> Not Bits that are set in $a are not set, and vice versa.
输入输出流操作符含义
/*
Manipulator
uppercase Turns on uppercase flag. Output
ws Skip leading white space. Input
*/
Table 7-2. Bitwise Operators(表7-2位操作符)
example name result
$a & $b And Bits that are set in both $a and $b are set.?/FONT>
$a | $b Or Bits that are set in either $a or $b are set.?/FONT>
~ $a?/FONT> Not Bits that are set in $a are not set, and vice versa.
输入输出流操作符含义
/*
Manipulator
uppercase Turns on uppercase flag. Output
ws Skip leading white space. Input
*/
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询