【C++基础语法】基本数据类型和计算(二)

目录

一、字符。

二、推断类型

三、格式化输出流及转义

四、运算优先级

五、字符的故事


1、字符

 

char 字符原理:内存数据(01)-编码规范-显示;ascii编码:基于拉丁字符的一套编码系统,用0-127个数字分别代表128个不同的字符,,共定义了128个字符,用一个字节就可以全部概括。

字符数据类型:

 

编码表:只需要记忆10 换行


#include <iostream>

int main()
{
    //std::cout << (char)65 << std::endl;
    //std::cout << (int)'A' << std::endl;

    char charA{ 'A' };
    char charB{ 65 };
    
    // 1要用大写L说明
    // 2不支持ascii编码
    //std::cout 不支持 wchar_t编码
    wchar_t wcharA{ L'我' };

    //wchar_t wcharA{ L'A' };


    charA++;
    //std::cout << ++charA << std:: endl;

    //std::cout << wcharA << std::endl;
   // std::wcout << wcharA << std::endl;

    //std::cout << "line" << 10;

    char c;
    std::cout << "请输入一个小写字母:" << std::endl;
    std::cin >> c;

    char b = c - 32;
    std::cout << b << std::endl;

    return 0;
    
}

 

2、推断类型

 

auto 变量名字{初始值}; typeid(b).name()查看变量类型


#include <iostream>

int main()
{
    auto a{ 200 };
    auto b{ 100LL };
    auto c{ 200L };

    auto d{ U'A' };

    auto e{ L'A' };

    std::cout << "变量a的类型为" << typeid(a).name() << char(10);
    std::cout << "变量b的类型为" << typeid(b).name() << char(10);
    std::cout << "变量c的类型为" << typeid(c).name() << char(10);
    std::cout << "变量d的类型为" << typeid(d).name() << char(10);




    return 0;
}

 

3、格式化输出流及转义

//#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <conio.h>
int main()
{
    int uni = _getch();
    printf("%d\n", uni);//输出ascii码


    int age{ 28 }, a{-999},b,c,d;
    printf("我好英俊a~!\n");
    //十进制整数
    printf("我叫%s, 我的年龄%d岁\n", "kagnkang", age);
    //十进制无符号整数
    printf("我叫%s, 我的年龄%d岁\n", "kagnkang", age);

    printf("%x\n", age);//十六进制表示

    printf("%+05d\n", age);//字符对齐

    //scanf("%d", &a);
   // printf("%d\n",a);

   // scanf_s("%d %d %d%d", &a, &b, &c, &d);
   // printf("%d%d%d%d", a, b, c, d);

    return 0;
}


4、运算优先级

 

 



#include <iostream>

int main()
{
    int a{ 10 };

    //a++;
   // ++a;

    int b{ 5 };
    int c{};

    //c = b + a++;//c = b + a;a = a + 1;

    //c = b + ++a;//a = a + 1;c = b + a;

    //c = 3 * -b++ + a;

    //后缀优先
    c = b++ + a;//c = b+++a;后缀优先  分解为c = b++ + a; 
    //先c = b + a 再 b++ c = 15 b = 6
    printf("%d\n", c);
    printf("%d\n", b);


    c = b-- - a;//同上
    //先c = b - a 再 b++ c = -4 b = 5
    printf("%d\n", c);
    printf("%d\n", b);
    


    //c = 2 * -b-- - a;
    //printf("%d\n", c);


    return 0;

}

5、字符的故事

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

康康今天学习了么

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值