C++——数据类型的比较

简介: C++——数据类型的比较

string字符串的比较

复习字符串的比较规则:

按顺先从前往后比较

同序号的字符按“ASCII”码值比较

直到遇到对应字符不等或者字符串结束



字符串比较的“运算符”

==

>

<

>=  (大于或者等于)

<=  (小于或者等于)

!=


c++中,字符串的比较, 可以直接使用以上的”比较运算符”

比如:

str1  ==  str2


字符串比较的“结果”:bool类型

逻辑真  true

逻辑假  false


表示真假的布尔类型

C++语言中,有两种bool(布尔)类型的表示方式:


1.直接使用bool类型

bool  x = true;

bool类型, 只有两个值:

true  

false

2.使用0和非0的任何值(C语言风格)

0:         表示假

非0:    表示真

ce780d780ad34303ba7aa619cea75f51.png

特别注意:


1>3  是假

1>3  ==  false  是真

3>1  是真

3>1 == false 是假

bool  x;

x  =  1 < 3;


类似:


对你的女神/男神说:


                   我爱你          => 是真


我爱你 == true   => 是真


                   我爱你 == false    => 是假


对你的备胎说:我爱你          => 是假


我爱你 == true   => 是假


             我爱你 == false   => 是真

常见错误:

3>2>1 是假

3>2>1  =>   true>1  =>  1>1   =>  false

3>2  &&  2>1   使用“逻辑与”运算。


bool类型使用场合:

if 语句

for语句

while语句


C语言字符串的比较

#include <string.h>

int strcmp( const char *str1, const char *str2 );


例如:

int  ret;

ret = strcmp(str1,  str2);


返回值:

str1  <  str2时, 返回值< 0(有些编译器返回 -1)

str1  >  str2时, 返回值> 0(有些编译器返回 1)

str1  等于  str2时, 返回值为0

demo

#include <stdio.h>
#include <string.h>
#include <Windows.h>
int main(void) {
      char addr[32];
      int ret;
      printf("美女,你是哪里人?");
      scanf("%s", addr);
      if (strcmp(addr, "湖南") == 0) {
        printf("美女,我们是老乡啊!\n");
      } else {
                  printf("美女,你和我的同学是老乡啊!\n");
      }
      system("pause");
      return 0;
}


其它数据类型的比较运算

char, int, short, float, double等数据类型,都可以使用比较运算:

大于:            >  


大于或等于:        >=


小于:             <


小于或等于:      <=


不等于:              !=    


等于:                ==     (注意:不是 = )


比较运算的结果:(逻辑值)


结果为“真”:  true


结果为“假”:  false

#include <iostream>
#include <Windows.h>
using namespace std;
int main(void) {
      int weight;
      printf("美女, 你多重啊?\n");
      cin >> weight;
      if (weight >= 120) {
            cout << "美女, 如此丰满, 真有福气!" << endl;
      } else {
            cout <<"美女, 这么瘦, 身材不错啊!" << endl;
      }
      system("pause");
      return 0;
}


相关文章
|
1月前
|
存储 安全 编译器
C++系列二:数据类型
C++系列二:数据类型
|
1月前
|
存储 C++
C/C++数据类型从0到内存具体分配详解
C/C++数据类型从0到内存具体分配详解
|
6月前
|
存储 编译器 程序员
C++基础篇之什么是数据类型
C++基础篇之什么是数据类型
|
3天前
|
存储 编译器 C++
C++从入门到精通:1.1.2基础语法之数据类型
C++从入门到精通:1.1.2基础语法之数据类型
|
19天前
|
存储 程序员 C++
C++数据类型
C++数据类型
|
1月前
|
存储 安全 编译器
【C/C++ 基本数据类型】C++ 基本数据类型深度解析与C语言对比
【C/C++ 基本数据类型】C++ 基本数据类型深度解析与C语言对比
59 0
|
1月前
|
存储 编译器 程序员
C++基本数据类型
C++基本数据类型
|
1月前
|
存储 算法 C++
c++复合数据类型
c++复合数据类型
|
1月前
|
存储 C++
C++语言中数据类型-自定义类
C++语言中数据类型-自定义类
10 0
|
1月前
|
存储 编译器 C++
C++语言的变量和数据类型
C++语言的变量和数据类型