首页 > 其他分享 >数据类型及运算

数据类型及运算

时间:2024-10-12 21:34:41浏览次数:7  
标签:right 运算 int 数据类型 signed include left

数据类型

名称 字节 范围
char 1 (character or integer) 8 bits 有符号(signed): -128 ~ 127 无符号: 0 ~ 225
short 2 短整数 16 bits signed: -32768 ~ 32767 0 ~ 65535
long 4 长整数 32 bits signed: -2147483648 ~ 2147483647 0 ~ 4294967295
int 4 integer signed: -2147483648~2147483647 0~4294967295
float 浮点数 3.4e + / - 38 7 digits
double 8 双精度浮点数 15 digits
long double 8 15 digits
bool 1
wchar 2 bits 1wide characters

Declared constants (const)

const int width = 100;
const zip  = 120; //没有指定类型,编译器会假设为整形 int

条件运算符 Conditional Operator (?)

格式:

condition ? result1 : result2;

如果条件 condition 为 true 则返回 result1,否则将返回 result2

int a = 10, b = 5;
cout << (7 == 5) ? 4 : 3 << "\n";      // 返回3,因为7不等于5.
cout << (7 == 5) + 2 ? 4 : 3 << "\n";  // 返回4,因为7等于5+2.
cout << (5 > 3) ? a : b << "\n";       // 返回a,因为5大于3.
cout << (a > b) ? a : b << "\n";       // 返回较大值,a 或b.

位运算 Bitwise Operators

位运算符 Bitwise Operators ( &, |, ^, ~, <<, >> )

& And Logic AND
Or
^ Xor Logical exclusive OR
~ Not Complement to one (bit inversion)
<< Shl Shift Left
>> Shr Shift Right

运算符优先级

() [] . -> ++ -- dynamic_cast static_cast reinterpret_cast const_cast typeid left to right
++ -- ~ ! sizeof new delete * & 指针和取地址 + - right to left
type 类型转换 right to left
.* ->* 指向成员的指针 left to right
* / % 乘、除、取模 left to right
+ - left to right
<< >> 位移 left to right
< > <= >= 关系操作符 left to right
== != 等于、不等于 left to right
& 按位与运算 left to right
^ 按位异或运算 left to right
按位或运算
&& 逻辑与运算 left to right
?: 条件运算 right to left
= *= /= %= += -= >>= <<= &= ^= = 赋值运算
, 逗号 left to right

字符串

#include <string>
string a;
int len = a.size(); //长度

字符串流

#include <string>
#include <sstream>

可对字符串的对象进行像流(stream)一样的操作

字符串转整数

#include <iostream>
#include <sstream>
#include <string>
using namespace std;
signed main() {
  string mystr("1204");
  int myint;
  stringstream(mystr) >> myint;
  cout << myint;
}

输入的字符串包空格

getline(cin, YourStringName);

Inline 函数

inline 可放在函数声明之前。好处只对短小的函数有效,编译运行快一些

声明形式:

inline type name ( arguments… ) { instructions … }

标签:right,运算,int,数据类型,signed,include,left
From: https://www.cnblogs.com/Mono-Awen/p/18461531

相关文章

  • 高级数据类型 Advanced Data
    高级数据类型AdvancedDataAdvancedData数组Arrays字符序列CharactersSequences指针Points动态内存分配数据结构DataStructures自定义数据类型Arraytype为任何objecttype//typename[elements];inta[5];intb[5]={16,2,77,40,1201};intc[]=......
  • JavaScript-条件运算符
    条件运算符条件运算符主要是通过if和问号(?)实现。if语句if语句后面小括号内是判断条件,之后大括号内是在判断条件为真的情况下执行的语句内容。if后面可以接着跟elseif,也可以跟else,但是else必须放在最后,即所有的if和elseif都执行完了之后才能是else。注意在多个ifelse判断的语句......
  • 数据类型
    数据类型拓展整数拓展进制:前缀二进制0b十进制八进制0十六进制0xinti=10;inti2=010;//八进制0inti3=0x10;//十六进制0x0~9A~F16(a-10)System.out.println(i);System.out.println(i2);System.out.println(i3);如图浮点数拓展BigDecimal数......
  • Java基本数据类型转换
    一、自动类型转换1.基本介绍当Java程序在进行赋值或者运算时,精度小的类型自动转换为精度大的数据类型,这个就是自动类型转换数据类型按精度(容量)大小进行排序为:![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/520b6288a88540b0ace9d2c22b844ca4.pngpublicclass......
  • java的数据类型
    java是一门强语言类型Java的数据类型分为两大类1.基本类型(primitivetype)强制转换类型会有内存溢出或者精度丢失问题,不能对boolean类型进行强制转换不能把对象类型转换位不相干的类型整数int类型拓张二进制0b八进制0十六进制0xfloat存在舍入误差问题,最好完全避免使......
  • 图解Redis 04 | Set数据类型的原理及应用场景
    介绍Redis的Set类型是一个不允许重复元素的集合,元素存储的顺序不按照插入的顺序,因此属于无序集合。一个Set最多可以存储2^32-1个元素,这与数学中的集合概念类似。Set类型不仅支持增、删、改、查等操作,还支持多个Set之间的交集、并集和差集运算。内部实现Set类......
  • 42 C 语言 typedef:为基本数据类型、数组、指针、结构体、共用体起别名
    目录1 typedef介绍2 为某个基本类型起别名2.1为int类型起别名Integer2.2为unsignedchar类型起别名Byte2.3为基本类型一次起多个别名3 为结构体、共用体起别名3.1为结构体起别名3.1.1分开定义结构体和别名3.1.2与结构体定义一起使用typedef3.1.3为......
  • 运算符的基础
    运算符一:二元运算符publicclassDemo01{publicstaticvoidmain(String[]args){//二元运算符//Ctrl+D:复制当前行到下一行inta=10;intb=20;intc=25;intd=25;System.out.println(a+b);......
  • Redis 5大数据类型
    这里说的数据类型是value的数据类型,key的类型都是字符串。5种数据类型:redis字符串(String)redis列表(List)redis集合(Set)redis哈希表(Hash)redis有序集合(Zset)哪里去获取redis常用数据类型操作命令:http://redis.cn/commands.html2.1、redis键(key)keys*:查看当前库所有的keyexis......
  • Redis 数据类型hash(哈希)
    目录1基本特性2主要操作命令 2.1设置和获取字段2.1.1 HSETkeyfieldvalue2.1.2 HGETkeyfield2.1.3 HMSETkeyfield1value1[field2value2...] 2.1.4 HMGETkeyfield1[field2...]2.2检查字段是否存在2.2.1 HEXISTSkeyfield2.3获取所有字段和......