C++ VS C#(1):注释,变量,控制台输出

//=====================================================================
//TITLE:
//    C++ VS C#(1):注释,变量,控制台输出
//AUTHOR:
//    norains
//DATE:
//    Monday  29-November-2010
//Environment:
//    Visual Studio 2010
//    Visual Studio 2005
//=====================================================================

 

1. 注释

 

    无论是C++还是C#,都支持“/* */”和“//”这两个注释符号,不过在此基础之上,C#还多支持了三根线,也就是“///”。严格来说,这个算是“//”语法的扩展,区别在于它可以在编译项目时,提取这个注释后面的文本,创建一个特殊的文本格式文件。

 


2. 变量

 

    两者最明显的区别是,C#已经不支持unsigned关键字,取而代之的是在类型之前以u替代。比如,声明一个无符号的int类型,对于C++来说是这样:   

 

    但对于C#来说,则更为简洁:      

    如果以表的形式,也许我们更清楚看到这两者的区别: 

类型

C++

C#

8位无符号整数

byte,unsigned char

byte

8位有符号整数

char

sbyte

16位无符号整数

unsigned short

ushort

16位有符号整数

short

short

32位无符号整数

unsigned int

uint

32位有符号整数

int

int

浮点型

float

float

浮点型

double

double

浮点型

/

decimal

一个UNICODE字符

std:wchar_t

char

一个ANSIC字符

char

?

一组UNICODE字符

std::wstring

string

一组ANSIC字符

std::string

?

布尔类型

bool

bool

 

    从表中可以看出,基本上同名的类型,所代表的意义基本相同,唯一的偏差就在于字符串。比如char在C#中是UNICODE,但在C++就是ANSIC了。同样地,也影响到””的使用,比如”ABC”,在C#是UNICODE,而C++还是ANSIC。

 


3. 控制台输出

 

    控制台内容很广泛,这里只以输出为例子。对于C++来说,可以用老式的printf,也可以用std::cout;而C#使用的是Console.WriteLine。

 

    假设有两个变量,一个是int类型,一个是string类型,如:

    int iVal = 25;
    string strVal = “Hello!”;//如果是C++编译无法通过,在前面加std::前缀,即std::string

 

    如果想以行的形式输出到控制台,我们可以这样:

 

    C++的printf:      

    C++的流形式:      

    C#的Console:      

    抛开C++的流形式不谈,C#的Console其实和printf有点像,只不过C#是使用{x}的形式,而C++则是%。另外一点就是,C++是必须指定类型的,比如%d为数字,而%s为字符串,而C#如果不想更改原意,只需要使用{x}来标明输出的位置即可。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值