当前位置 : 主页 > 编程语言 > c语言 >

C++中的几个特殊符号说明

来源:互联网 收集:自由互联 发布时间:2023-02-01
目录 C++的几个特殊符号 C++的>>和<< 操作符作用 位操作符 C++的几个特殊符号 # 把宏参数变为一个字符串,仅可用于宏定义中。 如: int GetLength(std::string str){    return str.length();}
目录
  • C++的几个特殊符号
  • C++的“>>“和“<<“
    • 操作符作用
    • 位操作符

C++的几个特殊符号

  • #

把宏参数变为一个字符串,仅可用于宏定义中。

如:

int GetLength(std::string str)
{
    return str.length();
}
#define LEN(str)    GetLength(#str)
int main()
{
    std::string str = "abcdefg";
    cout << LEN(str) << endl;
    return 0;
}
// 上述程序将输出3,而不是7
  • ##

把两个宏参数连接到一起,仅可用于宏定义中。

如:

int GetLength(std::string str)
{
    return str.length();
}
#define TOTALLEN(str1, str2)      GetLength(str1##str2)
int main()
{
    std::string str1 = "abcdefg";
    std::string str2 = "hijk";
    std::string str1str2 = "hello";
    cout << TOTALLEN(str1,str2) << endl;
    return 0;
}
// 上述程序输出5,即str1str2的长度
  • \

在宏定义中用于将不同行的上下文连接成一行

  • __DATE__

在源文件中插入当前编译的日期

  • __TIME__

在源文件中插入当前编译的时间

  • __FILE__

在源文件中插入当前源文件路径及文件名

  • __LINE__

在源文件中插入当前源代码的行号

C++的“>>“和“<<“

操作符作用

C++中标准输入输出中所使用的">>“和”<<"是重载运算符作用,意义是流插入运算付和流提取运算符

位操作符

在了解移位操作符和位操作符之前,我们需要知道一个十进制的整数是如何在计算机中存储的,以int a = 10 为例,int型占4个字节,一个字节有8位,正数十以二进制存储在这32位中,其在内存中的存储如下,为方便视图中间部分已省略。注意:注意:注意:

" 移位操作都是针对补码进行的,正数的原码、补码、反码相同,负数的原码取反得反码,反码加一得补码。"

  • ">>"右移操作符
  • "<<"左移操作符

以上为个人经验,希望能给大家一个参考,也希望大家多多支持自由互联。

网友评论