C++ 学习二

一、C++ 注释

  • // - 一般用于单行注释。

  • /* ... */ - 一般用于多行注释。

注释既可以单起一行也可以跟在语句后面。

  • #include <iostream>
    using namespace std;
     
    int main() {
      // 这是一个注释
      cout << "Hello World!";
      return 0;
    }
    #include <iostream>
    using namespace std;
     
    int main()
    {
       cout << "Hello World!"; // 输出 Hello World!
     
       return 0;
    }

对多行注释

以 /* 开始,以 */ 终止。既可以单行结束,也可以跨行结束。

#include <iostream>
using namespace std;
 
int main() {
    /* 这是注释 */
 
    /* C++ 注释也可以
     * 跨行
     */ 
    cout << "Hello World!";
    return 0;
}

 补充:

1.块函数多行注释不能嵌套使用。

2.

#if 0 ... #endif 属于条件编译,0 即为参数。

此外,我们还可以使用 #if 0 ... #endif 来实现注释,且可以实现嵌套,格式为:

#if 0
   code
#endif 

实际上以上代码还可以更具普适性。

#if condition
  code1
#else
  code2
#endif

此时若condition == True,则内部函数运算,否则不,这可以作为一种合适的调试。

二、C++ 数据类型

布尔型bool
字符型char
整型int
浮点型float
双浮点型double
无类型void
宽字符型

wchar_t

而实际上 wchar_t 是前面两种数据的组合。

typedef short int wchar_t;

一些基本类型可以使用一个或多个类型修饰符进行修饰:

  • signed
  • unsigned
  • short
  • long

通常情况下,数据类型对应的位大小一定,但随着操作系统不同,这点存在差异。 

类型范围
char1 个字节-128 到 127 或者 0 到 255
unsigned char1 个字节0 到 255
signed char1 个字节-128 到 127
int4 个字节-2147483648 到 2147483647
unsigned int4 个字节0 到 4294967295
signed int4 个字节-2147483648 到 2147483647
short int2 个字节-32768 到 32767
unsigned short int2 个字节0 到 65,535
signed short int2 个字节-32768 到 32767
long int8 个字节-9,223,372,036,854,775,808 到 9,223,372,036,854,775,807
signed long int8 个字节-9,223,372,036,854,775,808 到 9,223,372,036,854,775,807
unsigned long int8 个字节0 到 18,446,744,073,709,551,615
float4 个字节精度型占4个字节(32位)内存空间,+/- 3.4e +/- 38 (~7 个数字)
double8 个字节双精度型占8 个字节(64位)内存空间,+/- 1.7e +/- 308 (~15 个数字)
long double16 个字节长双精度型 16 个字节(128位)内存空间,可提供18-19位有效数字。
wchar_t2 或 4 个字节

1 个宽字符

以我的系统为例。

type:           ************size**************
bool:           所占字节数:1   最大值:1               最小值:0
char:           所占字节数:1   最大值:                最小值:€
signed char:    所占字节数:1   最大值:                最小值:€
unsigned char:  所占字节数:1   最大值:               最小值:
wchar_t:        所占字节数:2   最大值:65535           最小值:0
short:          所占字节数:2   最大值:32767           最小值:-32768
int:            所占字节数:4   最大值:2147483647      最小值:-2147483648
unsigned:       所占字节数:4   最大值:4294967295      最小值:0
long:           所占字节数:4   最大值:2147483647      最小值:-2147483648
unsigned long:  所占字节数:4   最大值:4294967295      最小值:0
double:         所占字节数:8   最大值:1.79769e+308    最小值:2.22507e-308
long double:    所占字节数:8   最大值:1.79769e+308    最小值:2.22507e-308
float:          所占字节数:4   最大值:3.40282e+38     最小值:1.17549e-38
size_t:         所占字节数:8   最大值:18446744073709551615    最小值:0
string:         所占字节数:40
type:           ************size**************

重点讲讲unsigned 和 signed 和 long

unsigned  英文义 无符号的。 从以上数据最大值也可以看出了,unsigned 修饰的数据不存在负值,也就不存在用负号修饰。

而 signed 所修饰的数据关于0点对称。

long long结构不知道为什么上面没有,但long long结构是算法题标配。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值