C++基础入门教程(1)

简介: C++基础入门教程(1)

1 C++初识

1.1 第一个C++程序

编写一个C++程序总共分为4个步骤

创建项目

创建文件

编写代码

运行程序

1.1.1 创建项目

Visual Studio是我们用来编写C++程序的主要工具,我们先将它打开

2f0085a79b744a1886dc76dd6f0a40b6.png

5b873d52709b4478a1f3f888b20b2956.png

d0beaf4cab3d40a3b59722d45184118e.png

1.1.2 创建文件

右键源文件,选择添加->新建项

022609c69b414fb69789d1eeaf347d95.png

给C++文件起个名称,然后点击添加即可

c97a77548c8f45bab977c0ba13933cdf.png

1.1.3 编写代码


#include<iostream>
using namespace std;
int main() {
  cout << "Hello world" << endl;
  system("pause");
  return 0;
}

1.1.4 运行程序

86ab11ab15e4437eb65d2a535983c45c.png


1.2 注释

作用:在代码中加一些说明和解释,方便自己或其他程序员程序员阅读代码

两种格式

单行注释:// 描述信息

通常放在一行代码的上方,或者一条语句的末尾,对该行代码说明

多行注释: / 描述信息 /

通常放在一段代码的上方,对该段代码做整体说明

提示:编译器在编译代码时,会自动忽略注释的内容


1.3 变量

作用:给一段指定的内存空间起名,方便操作这段内存

语法:数据类型 变量名 = 初始值;

示例:

#include<iostream>
using namespace std;
int main() 
{
  //变量的定义
  //语法:数据类型  变量名 = 初始值
  int a = 10;
  cout << "a = " << a << endl;
  system("pause");
  return 0;
}

注意:C++在创建变量时,必须给变量一个初始值,否则会报错


1.4 常量

作用:用于记录程序中不可更改的数据

C++定义常量两种方式

#define 宏常量: #define 常量名 常量值

通常在文件上方定义,表示一个常量

const修饰的变量 const 数据类型 常量名 = 常量值

通常在变量定义前加关键字const,修饰该变量为常量,不可修改

示例:


//1、宏常量
#define day 7
int main() 
{
  cout << "一周里总共有 " << day << " 天" << endl;
  //day = 8;  //报错,宏常量不可以修改
  //2、const修饰变量
  const int month = 12;
  cout << "一年里总共有 " << month << " 个月份" << endl;
  //month = 24; //报错,常量是不可以修改的
  system("pause");
  return 0;
}

1.5 关键字

作用: 关键字是C++中预先保留的单词(标识符)

在定义变量或者常量时候,不要用关键字

C++关键字如下:

asm do if return typedef

auto double inline short typeid

bool dynamic_cast int signed typename

break else long sizeof union

case enum mutable static unsigned

catch explicit namespace static_cast using

char export new struct virtual

class extern operator switch void

const false private template volatile

const_cast float protected this wchar_t

continue for public throw while

default friend register true

delete goto reinterpret_cast try

提示:在给变量或者常量起名称时候,不要用C++得关键字,否则会产生歧义


1.6 标识符命名规则

作用:C++规定给标识符(变量、常量)命名时,有一套自己的规则

标识符不能是关键字

标识符只能由字母、数字、下划线组成

第一个字符必须为字母或下划线

标识符中字母区分大小写

建议:给标识符命名时,争取做到见名知意的效果,方便自己和他人的阅读


2 数据类型

C++规定在创建一个变量或者常量时,必须要指定出相应的数据类型,否则无法给变量分配内存


2.1 整型

作用:整型变量表示的是整数类型的数据

C++中能够表示整型的类型有以下几种方式,区别在于所占内存空间不同:

数据类型 占用空间 取值范围

short(短整型) 2字节 (-2^15 ~ 2^15-1)

int(整型) 4字节 (-2^31 ~ 2^31-1)

long(长整型) Windows为4字节,Linux为4字节(32位),8字节(64位) (-2^31 ~ 2^31-1)

long long(长长整型) 8字节 (-2^63 ~ 2^63-1)


2.2 sizeof关键字

作用: 利用sizeof关键字可以统计数据类型所占内存大小

语法: sizeof( 数据类型 / 变量)

示例:


int main() 
{
  cout << "short 类型所占内存空间为: " << sizeof(short) << endl;
  cout << "int 类型所占内存空间为: " << sizeof(int) << endl;
  cout << "long 类型所占内存空间为: " << sizeof(long) << endl;
  cout << "long long 类型所占内存空间为: " << sizeof(long long) << endl;
  system("pause");
  return 0;
}

整型结论:short < int <= long <= long long


2.3 实型(浮点型)

作用:用于表示小数

浮点型变量分为两种:

单精度float

双精度double

两者的区别在于表示的有效数字范围不同。

数据类型 占用空间 有效数字范围

float 4字节 7位有效数字

double 8字节 15~16位有效数字

示例:

int main()
 {
  float f1 = 3.14f;
  double d1 = 3.14;
  cout << f1 << endl;
  cout << d1<< endl;
  cout << "float  sizeof = " << sizeof(f1) << endl;
  cout << "double sizeof = " << sizeof(d1) << endl;
  //科学计数法
  float f2 = 3e2; // 3 * 10 ^ 2 
  cout << "f2 = " << f2 << endl;
  float f3 = 3e-2;  // 3 * 0.1 ^ 2
  cout << "f3 = " << f3 << endl;
  system("pause");
  return 0;
}

2.4 字符型

作用: 字符型变量用于显示单个字符

语法:char ch = ‘a’;

注意1:在显示字符型变量时,用单引号将字符括起来,不要用双引号

注意2:单引号内只能有一个字符,不可以是字符串

C和C++中字符型变量只占用1个字节

字符型变量并不是把字符本身放到内存中存储,而是将对应的ASCII编码放入到存储单元

int main() 
{
  char ch = 'a';
  cout << ch << endl;
  cout << sizeof(char) << endl;
  //ch = "abcde"; //错误,不可以用双引号
  //ch = 'abcde'; //错误,单引号内只能引用一个字符
  cout << (int)ch << endl;  //查看字符a对应的ASCII码
  ch = 97; //可以直接用ASCII给字符型变量赋值
  cout << ch << endl;
  system("pause");
  return 0;
}

ASCII码表格:

abbfb7109a634cb48fcd6097f25cb5fa.jpeg

ASCII 码大致由以下两部分组成:

ASCII 非打印控制字符: ASCII 表上的数字 0-31 分配给了控制字符,用于控制像打印机等一些外围设备

ASCII 打印字符:数字 32-126 分配给了能在键盘上找到的字符,当查看或打印文档时就会出现


2.5 转义字符

作用: 用于表示一些不能显示出来的ASCII字符

现阶段我们常用的转义字符有:\n \ \t

转义字符 含义 ASCII码值(十进制)

\a 警报 007

\b 退格(BS) ,将当前位置移到前一列 008

\f 换页(FF),将当前位置移到下页开头 012

\n 换行(LF) ,将当前位置移到下一行开头 010

\r 回车(CR) ,将当前位置移到本行开头 013

\t 水平制表(HT) (跳到下一个TAB位置) 009

\v 垂直制表(VT) 011

\ 代表一个反斜线字符"" 092

’ 代表一个单引号(撇号)字符 039

" 代表一个双引号字符 034

? 代表一个问号 063

\0 数字0 000

\ddd 8进制转义字符,d范围0~7 3位8进制

\xhh 16进制转义字符,h范围09,af,A~F 3位16进制

示例:

int main() 
{
  cout << "\\" << endl;
  cout << "\tHello" << endl;
  cout << "\n" << endl;
  system("pause");
  return 0;
}

2.6 字符串型

作用:用于表示一串字符

两种风格

C风格字符串: char 变量名[] = “字符串值”

示例:

int main() 
{
  char str1[] = "hello world";
  cout << str1 << endl;
  system("pause");
  return 0;
}

注意:C风格的字符串要用双引号括起来

C++风格字符串: string 变量名 = “字符串值”

示例:


int main()
 {
  string str = "hello world";
  cout << str << endl;
  system("pause");
  return 0;
}

注意:C++风格字符串,需要加入头文件==#include==


2.7 布尔类型 bool

作用: 布尔数据类型代表真或假的值

bool类型只有两个值:

true — 真(本质是1)

false — 假(本质是0)

bool类型占1个字节大小

示例:

int main()
 {
  bool flag = true;
  cout << flag << endl; // 1
  flag = false;
  cout << flag << endl; // 0
  cout << "size of bool = " << sizeof(bool) << endl; //1
  system("pause");
  return 0;
}

2.8 数据的输入

作用:用于从键盘获取数据

关键字: cin

语法: cin >> 变量

示例:

int main()
{
  //整型输入
  int a = 0;
  cout << "请输入整型变量:" << endl;
  cin >> a;
  cout << a << endl;
  //浮点型输入
  double d = 0;
  cout << "请输入浮点型变量:" << endl;
  cin >> d;
  cout << d << endl;
  //字符型输入
  char ch = 0;
  cout << "请输入字符型变量:" << endl;
  cin >> ch;
  cout << ch << endl;
  //字符串型输入
  string str;
  cout << "请输入字符串型变量:" << endl;
  cin >> str;
  cout << str << endl;
  //布尔类型输入
  bool flag = true;
  cout << "请输入布尔型变量:" << endl;
  cin >> flag;
  cout << flag << endl;
  system("pause");
  return EXIT_SUCCESS;
}

本章终!


相关文章
|
4月前
|
编译器 C++ 开发者
【Conan 入门教程 】使用Conan 2.X和Autotools高效构建C/C++项目
【Conan 入门教程 】使用Conan 2.X和Autotools高效构建C/C++项目
287 1
|
4月前
|
程序员 编译器 C语言
最新Dev-C++下载安装以及C语言环境搭建教程(含C语言入门教程)
最新Dev-C++下载安装以及C语言环境搭建教程(含C语言入门教程)
533 0
|
11月前
|
存储 C++
软件开发入门教程网之C++ 常量
软件开发入门教程网之C++ 常量
|
11月前
|
算法 C++ iOS开发
软件开发入门教程网 Search之C++ 接口(抽象类)
软件开发入门教程网 Search之C++ 接口(抽象类)
|
11月前
|
数据安全/隐私保护 C++ iOS开发
软件开发入门教程网 Search之C++ 继承
软件开发入门教程网 Search之C++ 继承
|
11月前
|
数据采集 搜索推荐 网络安全
软件开发入门教程网之软件开发入门教程网之C++ 常量
软件开发入门教程网之软件开发入门教程网之C++ 常量
40 0
|
11月前
|
并行计算 程序员 C++
软件开发入门教程网 Search之C++ 简介
软件开发入门教程网 Search之C++ 简介
|
3月前
|
自然语言处理 编译器 C语言
C++语言入门教程
C++语言入门教程
|
4月前
|
Ubuntu 编译器 C++
【Conan 入门教程 】在Ubuntu上使用Conan编译C++第三方库:一站式解决方案
【Conan 入门教程 】在Ubuntu上使用Conan编译C++第三方库:一站式解决方案
1325 1
|
11月前
|
存储 C++
软件开发入门教程网之C++ 常量
软件开发入门教程网之C++ 常量
38 0