zoukankan      html  css  js  c++  java
  • C++常量(C++数值常量、字符串常量、符号常量)

    http://see.xidian.edu.cn/cpp/biancheng/view/104.html

    字符串常量

    用双撇号括起来的部分就是字符串常量,如"abc","Hello!","a+b","Li ping"都是字符串常量。字符串常量"abc"在内存中占4个字节(而不是3个字节),见图2.5。

     

    图 2.5


    编译系统会在字符串最后自动加一个''作为字符串结束标志。但''并不是字符串的一部分,它只作为字符串的结束标志。如
       cout<<"abc"<<endl;
    输出3个字符abc,而不包括''。

    注意: "a"和'a'代表不同的含义,"a"是字符串常量,'a' 是字符常量。前者占两个字节,后者占1个字节。请分析下面的程序片段:
        char c;  //定义一个字符变量
        c='a';  //正确
        c="a";  //错误,c只能容纳一个字符

    请思考:字符串常量"abc "包含几个字符?不是5个而是4个字符,其中" "是一个转义字符。但它在内存中占5个字节(包括一个""字符) 。编译系统遇到""时就会把它认作转义字符的标志,把它和其后的字符一起作为一个转义字符。

    如果""后面的字符不能与""组成一个合法的转义字符(如"c"),则在编译时显示出错信息。如果希望将""字符也作为字符串中的一个字符,则应写为"abc\n",此时字符包括5个字符,即a,b,c,,n。如果有以下输出语句:
        cout<<"abc\ "<<endl;
    则会输出:
        abc  (然后换行)
    同理执行
        cout<<"I say "Thank you!" ";
    的输出是:
        I say "Thank you!"

    如果在一个字符串中最后一个字符为"",则表示它是续行符,下一行的字符是该字符串的一部分,且在两行字符串间无空格。如
        cout<<"We must study C  //本行最后的""后面的空格和换行均不起作用
       ++ hard!";  //本行的字符紧连在上一行最后的""前面字符之后
    则输出:
        We must study C++ hard!

    符号常量

    为了编程和阅读的方便,在C++程序设计中,常用一个符号名代表一个常量,称为符号常量,即以标识符形式出现的常量。

    【例2.3】符号常量的使用。

     1 #include <iostream>
     2 using namespace std;
     3 #define PRICE 30  //注意这不是语句,末尾不要加分号
     4 int main ( )
     5 {
     6   int num,total;
     7   num=10;
     8   total=num * PRICE;
     9   cout<<"total="<<total<<endl;
    10   return 0;
    11 }
  • 相关阅读:
    python hmac解密
    pymongo加索引以及查看索引例子
    语音-数字中继-E1-学习帖
    Partition does not start on physical sector boundary
    吃自助餐怎么样一个顺序吃法才合算?
    关于ROS证书导入的步骤
    MikroTik-ROS-无线设备传输距离
    这个移动通讯中 DB 、DBm 、瓦的基本知识的问题:
    涨姿势 | 无线通讯距离现场评估知多少?
    linux下生成https的crt和key证书
  • 原文地址:https://www.cnblogs.com/kira2will/p/3961243.html
Copyright © 2011-2022 走看看