day01 初学c++第一章

目录

一、前置代码以及cout打印

两条预处理代码:

count打印语句:

二、符号常量

 三、标识符的命名规范

四、数据类型

 c++中整数类型的表现形式:

在c++中,数字存在有符号和无符号之分的

c++中实型的表现形式:

代码所用函数:

c++中字符型的表现形式:

基础运算总结:

转义字符

c++中字符串的表现形式 :

字符串的拼接

 c++中布尔型的表现形式(bool)

补充:在c++中,对于常量的类型确定遵循最小原则:

五、cin数据输入

六、运算符

算术运算符

赋值运算符 

​编辑 比较运算符

 逻辑运算符

 三元运算符


一、前置代码以及cout打印

两条预处理代码:

//两条预处理的代码
#include "iostream"
using namespace std;

count打印语句:

    /* count 打印语句:cout<< ... << ... << ... <<endl;
     * <<endl用于换行
     * */
    cout << "hello" << 10 << endl;

二、符号常量

符号常量:#define 名称(标识符) 常量值,符号常量定义在代码的头部,不需要分号结尾

 作用:可以基于标识符(名称)重复使用常量值,无需再次书写

#include <iostream>
using namespace std;

#define FAT_BMI 28 

int main()
{
    //使用符号常量
    cout << FAT_BMI << endl;
    return 0;
}

 三、标识符的命名规范

1、下划线命名法:纯小写,一般用于变量命名。student_name、teacher_age等等

2、小驼峰法:第一个单词首字母得小写,后边单词首字母大写,一般用于变量、函数(方法)命名。studentName、teacherAge等等

3、大驼峰法:所有单词首字母都得大写,一般用于命名。StudentName、TeacherAge等等

四、数据类型

 c++中整数类型的表现形式:

在c++中,数字存在有符号和无符号之分的

无符号:仅仅允许正数存在

有符号:可以允许负数存在,简化为u_int、u_long表示无符号(导入#include <_bsd_types.h>)

 []表示可选,可写可不写。如:signed int 和 int相同

取值范围规则(n表示位数):无符号最大值差不多是有符号最大值的两倍

有符号:-2^(n-1) ~ 2^(n-1)-1

无符号:0 ~ 2^n-1

c++中实型的表现形式:

 注意:实型数据没有signed和unsigned,默认全部有符号

    float num1 = 1234567890;//   1234567936.000000,只提供了前7位的准确输出,4字节
    float num2 = 1.234567890;//            1.234568,只提供了前7位的准确输出
    cout<< num1 << "," << num2 << endl;//1.23457e+09,1.23457

    cout<< fixed;//设置为小数显示
    cout.width(20);//设置显示的最大宽度(最大位数)

    double num3 = 1234567890.1234567890;//   1234567890.123457,只提供了前16位的准确输出,8字节

    long double num4 = 1234567890.1234567890; 
    cout<< num4 << "," << sizeof(num4) << endl;//   1234567890.123457,只提供了前16位的准确输出,16字节

代码所用函数:

1、控制cout输出小数格式

cout<<fixed;设置为小数显示

cout.width(20);设置显示的最大宽度(最大位数)

2、获取数据占用的字节数

sizeof(数据)

c++中字符型的表现形式:

char类型用来表示字符,同时支持有符号和无符号。

 演示代码:

    char ch = 65;
    cout << ch << endl;//A

    char ch2 = 'a';
    cout << ch2 << endl;//a

    cout << ch + 1 << endl;//66
    cout << ch2 + 1 << endl;//98

    char ch3 = 'a' + 2;
    cout << ch3 <<endl;//c

基础运算总结:

1、字符类型数据与数字进行运算时,字符类型数据会变成数字参与运算,结果自然也就是数字

2、输出:直接将"数字"输出时,结果会是ASCII表对应的数据;直接将字母输出时,结果仍然是字母;间接将"数字"输出时,结果就是数字。

转义字符

含义:将普通字符使用\作为开头,将其含义进行转换,对照得到ASCII表的控制字符的功能

 代码演示:

    //\n : 换行 \t:制表符 \\:表示一个反斜杠本身 \':表示单引号 \":表示双引号

    cout << "你好啊 \n 世界" << endl;
    cout << "----------" << endl;

    //\t制表符演示,效果等同于键盘的tab键,一个\t可以补充到8个字符位
    cout << "hello \t worle" << endl;
    cout << "a \t car" << endl;
    cout << "----------" << endl;

    //如果要打印双引号和单引号,需要\\    \'来转义,是反向转义,将双引号和单引号的特殊效果消除
    cout << "\\    \'" << endl;
    cout << "----------" << endl;
/*
你好啊 
 世界
----------
hello    worle
a        car
----------
\    '
---------- */

c++中字符串的表现形式 :

两种风格的字符串使用形式:

c语言风格字符串(了解):

char a[] = "helloWorld";//字符数组形式

char *b = "seeYou";//指针形式

c++风格字符串:

string c = "c++";

    //c语言风格的字符串
    char s1[] = "helloWorld";
    char *s2 = "seeYou";

    //c++风格字符串
    string s3 = "hello,c++";

    cout<<s1<< endl;//helloWorld
    cout<<s2<< endl;//seeYou
    cout<<s3<< endl;//hello,c++

    s2 = "666";
    s3 = "777";
    cout<<s2<< endl;//666
    cout<<s3<< endl;//777

注意:字符数组的形式s1不能通过重新赋值来改变值,s2,s3可以

字符串的拼接

如果是字符串与字符串进行连接,则直接用+号即可;否则可以使用c++内置的to_string(内容)函数将内容转换为字符串类型(不用该函数的话,会直接报错)

    string name = "小黑";
    string major = "物理";


    int age = 21;
    double high = 178.50;

    string res = "我叫做:" + name + "\n我的专业是:" + major + "\n我的年龄是:" + to_string(age) + "\n我的身高是:" + to_string(high);

    cout << res << endl;
/*
我叫做:小黑
我的专业是:物理
我的年龄是:21
我的身高是:178.500000*/

 c++中布尔型的表现形式(bool)

true 表示真(本质上是数字1)

false 表示假(本质上是数字0)

    bool flag = true;
    bool flag2 = false;

    cout << flag << endl;//1
    cout << flag2 << endl;//0

补充:在c++中,对于常量的类型确定遵循最小原则:

按照所书写的字面量的值,来确定类型,默认int,从小到大进行适配

当然,也可以指定后缀确定 (常量是可以有后缀的);

例如:

10L;//指定为long类型

123UL;//指定为unsigned long类型 

五、cin数据输入

语法:数据类型 变量;cin >> 变量

注意:1、cin会自动识别接收数据的变量类型,完成类型适配

2、使用符号位 >> 和 cout是相反的

    int a;
    cin >> a;//4
    cout<< a << endl;//4

六、运算符

含义:运算符是一种符号,用于告诉编译器执行特定的数学或逻辑操作

算术运算符

算术运算符就是通过指定的符号,对程序内的数据,进行数学运算

 

赋值运算符 

含义:是一种双目运算符,用于将右侧表达式的值赋予左侧变量

 比较运算符

 含义:是一种双目运算符,用于对两个数据进行比较(大、小、相等),得到bool型结果。

 

可以用于比较:整型、实型、字符型,即数字的大小

针对字符串的比较需要特定操作 

#include <iostream>
#include "cstring";//c 语言字符串库
using namespace std;

int main()
{

    //字符串的比较
    //c语言风格:char s[]   char *s
    //c语言风格字符串,直接应用比较运算符,比较的是内存地址,而不是内容
    char s1[] = "hello";
    char *s2 = "hello";
    cout << "s1 == s2 : " << (s1 == s2) << endl;//s1 == s2 : 0,结果显示为假

    //strcmp进行比较,0:相等,-1:s1 < s2,1:s1 > s2
    cout << "s1 == s2 ? " << strcmp(s1,s2) << endl;//s1 == s2 ? 0
    char s3[] = "a";
    char *s4 = "b";
    cout << "s3 == s4 ? " << strcmp(s3,s4) << endl;//s3 == s4 ? -1



    //c++风格字符串,string类型的都是c++风格字符串
    //在比较中只要有1个c++风格字符串,就可以用 比较运算符了
    string s5 = "a";//c++风格
    char s6[] = "a";//c风格

    cout << "s5 == s6 ?" << (s5 == s6) << endl;//s5 == s6 ?1.结果显示为真

    return 0;
}

 c语言风格需要导入"cstring"库,结果0:相等,-1:s1<s2,1:s1>s2;

在比较中只要1个c++风格字符串,就可以用比较运算符了

 逻辑运算符

含义:是一种单/双目运算符,用于对单个或多个表达式进行逻辑判断

 

 三元运算符

含义:是一种三目运算符,用于对逻辑进行判断,根据判断结果提供不同值 

语法:产出bool结果的表达式?值1:值2;

其含义为:

如果?之前的表达式结果为true,那么提供值为1的结果

如果结果为false,那么提供值为2的结果 

    int num1,num2;
    cin >> num1;//3
    cin >> num2;//5

    string res = num1 > num2 ? "num1 > num2" : "num1 < num2" ;

    cout << res << endl;//num1 < num2

  • 26
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值