c和c++比较

2016-08-01  本文已影响16人  yaya_pangdun

1. 类型增强

c语言中这样可以通过编译,c++中这样会报错

const int a = 100;
int *p = &a;
*p = 150;

c++需要改为

const int a = 100;
const int *p = &a;

tips:如何查看const修饰的范围
这两个完全相同,可以拿到类型int两个都是const a

const int a;
int const a;

去掉类型int->*const pp的内容不能改变

int *const p;
const int *const p;

内置bool类型

bool b = false;

模拟布尔类型

typedef enum BOOL
{
   FALSE, TRUE
}Bool;

Bool a = TRUE;

枚举

enum Day
{
   Mon,Tue,Wen
};

enum Day day;
day = 100;

其他用法

enum 
{
   Spr, Sum, Autu, Win
};
//等价于
#define Spr 0
#define Sum 1
#define Autu 2
#define Win 3

输入

char c[30];
fgets(c, 30, stdin);

string 类型

string name;
name.max_size();

格式化输出

设置域宽

#include <iomanip>

cout<<setw(8)<<a<<endl; //右对齐
cout<<setiosflags(ios::1eft)<<setw(8)<<a<<endl; //左对齐

设置小数位数

//两个小数位
cout<<setprecision(2)<<setiosflags(ios::fixed)<<a<<endl;

制定进制输出

cout<<hex<<a<<endl;
cout<<oct<<a<<endl;

加入填充符

cout<<setfill('x')<<setw(8)<<a<<endl;
上一篇 下一篇

猜你喜欢

热点阅读