【C++基础】变量、常量、关键字、标识符命名

四个步骤:

  • 创建项目
  • 创建文件
  • 编写代码
  • 运行程序

写代码前的框架:

#include
using namespace std;

int main() {

    system("pause");
    return 0;
}

两种格式:

  • 单行注释: // 描述信息
  • 通常放在一行代码的上方,或者一条语句的末尾,对该行代码说明
  • 多行注释: /* 描述信息 */
  • 通常放在一段代码的上方,对该段代码做整体说明

在vs项目中,所有 cpp文件只能有一个 main主函数,有且仅有一个,不能重名

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

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

变量存在的意义:方便我们管理内存空间

int main() {
    // 变量创建的语法: 数据类型 变量名 = 变量初始值;
    int a = 10;
    cout << "a = " << a << endl;

    system("pause");
    return 0;
}

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

C++定义常量的两种方式:

// 1.宏常量,常定义在文件开头
#define Day 7

int main() {
    cout << "一周里总共有:" << Day << "天" << endl;
    // Day = 8;  // 报错,表达式必须是可修改的左值,宏常量不可以修改
    // Day 是常量,一旦修改就会报错

    // 2.const修饰变量,常定义在函数体内部
    const int month = 12;
    cout << "一年里总共有:" << month << "个月份" << endl;
    // month = 24;  // 报错,表达式必须是可修改的左值,const修饰的变量也称为常量,常量是不可以修改的

    system("pause");

    return 0;
}

作用:关键字是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++的关键字,否则会产生歧义

int main() {

    // 创建变量:数据类型 变量名称 = 变量初始值;

    int a = 10;
    // 不要用关键字给变量或者常量起名称
    // int int = 10;  // 错误,类型说明符的组合无效
    // 第二个int是关键字,不可以作为变量的名称

    system("pause");
    return 0;
}

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

  • 标识符不能是关键字
  • 标识符只能由字母、数字、下划线组成
  • 第一个字符必须为字母或下划线
  • 标识符中字母区分大小写
// 标识符命名规则
// 1、 标识符不可以是关键字
// 2、 标识符是由字母、数字、下划线构成
// 3、 标识符第一个字符只能是字母或下划线
// 4、 标识符是区分大小写的

int main() {
    // 1、 标识符不可以是关键字
    // int int = 10;  // 错误

    // 2、 标识符是由字母、数字、下划线构成
    int abc = 10;
    int _abc = 20;
    int _abc123 = 30;

    // 3、 标识符第一个字符只能是字母或下划线
    // int 123abc = 40;  // 错误,应输入标识符

    // 4、 标识符是区分大小写的
    int aaa = 100;
    // cout << AAA << endl;  // AAA 和 aaa 不是同一个名称

    // 建议:给变量起名的时候,最好能够做到见名知意
    int num1 = 10;
    int num2 = 20;
    int sum = num1 + num2;
    cout << sum << endl;

    system("pause");

    return 0;
}

Original: https://www.cnblogs.com/seansheep/p/15887930.html
Author: 在青青草原上抓羊
Title: 【C++基础】变量、常量、关键字、标识符命名

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/608955/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • C语言静态库与动态库

    库 是一种代码的二进制的封装形式,将.o文件打包封装就成了库。库可以在任何地方使用,但用户却不能看见他的具体实现。库有利于代码模块化,只要接口设计得合理,改变库的内部实现,不会影响…

    Linux 2023年6月7日
    088
  • 使用docker 5分钟搭建一个博客(mysql+WordPress)

    一.系统环境 二.前言 三.搭建博客 3.1 创建wordpress和mysql容器 3.2 在wordpress界面设置个人博客信息 3.3 WordPress容器创建命令的简化…

    Linux 2023年6月7日
    085
  • [转帖]shell学习之shell执行方式及排错

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    Linux 2023年5月28日
    083
  • openssl 签署SAN证书

    openssl, x509, SAN 1、Prepare openssl config file. cat > my-openssl.cnf << EOF [ c…

    Linux 2023年6月6日
    078
  • Redis具体解释

    2、 redis.windows.conf各项配置參数介绍 默认情况下,redis不是在后台模式执行的,假设须要在后台进程执行。把该项的值更改为yes。默觉得no daemoniz…

    Linux 2023年5月28日
    086
  • Nginx配置中遇到到的问题和解决方案

    关于Nginx配置中遇到到的问题和解决方案 整理知识,学习笔记 Nginx配置别名(alias)及PHP解析 Nginx配置别名(alias)及PHP解析。 语法规则: locat…

    Linux 2023年6月13日
    076
  • flask 之上传本地图片

    项目配置 1 2 3 4 5 6 7 8 9 10 11 12 13 14 import os class Config(object): DEBUG = True SQLALCH…

    Linux 2023年6月8日
    096
  • Linux 磁盘挂载

    具体操作是: 1.先对磁盘进行格式化; 挂载磁盘到需要的挂载点; 3.添加分区启动表 1、首先查看系统中磁盘信息 命令为:fdisk -l 2、格式化要挂载的磁盘 格式化命令为:m…

    Linux 2023年6月7日
    084
  • Mac Mini 安装Ubuntu20.04 KVM

    在一台 Mac Mini mid 2011上安装Ubuntu20.04并配置KVM环境, 过程也适用于其他版本的Mac主机. I5 2415, 内存8G*2, 硬盘 SSD 500…

    Linux 2023年5月27日
    099
  • 外键,查询关键字

    目录 自增特性 约束条件之外键 *查询关键字 内容 自增特性 自增不会随着数据的删除而回退 删除数据但无法重置主键 truncate 删除数据并重置主键值 约束条件之外键 简介 给…

    Linux 2023年6月7日
    084
  • linux 使用mailx发送邮件

    1.安装对应的工具 [root@CentOS7 ~]# yum install postfix mailx -y [root@CentOS7 ~]# systemctl enabl…

    Linux 2023年6月7日
    090
  • Linux静默安装weblogic12(fmw_12.1.3.0.0_wls.jar)

    1、安装JDK环境 2、创建安装用户 3、配置JAVA环境变量 4、创建响应文件wls.rsp 响应文件中的项一定要写全,否则会报奇怪的错误。 5、创建Loc文件oraInst.l…

    Linux 2023年6月14日
    088
  • Linux中CentOS 7版本安装JDK、Tomcat、MySQL、lezsz、maven软件详解

    软件安装 在Linux系统中,安装软件的方式主要有四种,这四种安装方式的特点如下: 安装方式 特点 二进制发布包安装 软件已经针对具体平台编译打包发布,只要解压,修改配置即可 rp…

    Linux 2023年6月6日
    095
  • MySQL环境变量配置方法

    MySQL配置方法 下载免安装版本的MySQL数据库,大家根据自己的开发环境下载对应版本的数据库,我在此举例的是Windows系统下的配置方法,下载地址如下: https://de…

    Linux 2023年6月7日
    094
  • 关于如何在window下执行SQLSERVER的定时备份

    引言 在使用SqlServer Express 版本的时候发现,这个版本不支持通过数据库的代理方式进行数据库的维护。 解决方案 使用SQL语句加windows任务计划的方式解决具体…

    Linux 2023年6月14日
    088
  • 【证券从业】金融基础知识-第三章 证券市场主体02

    注1:后续学习并整理到第八章,全书完结后再合并成一个笔记进行源文件分享 注2:本章内容巨多,大约分为三篇文章记录消化 posted @2022-06-03 02:14 陈景中 阅读…

    Linux 2023年6月13日
    091
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球