程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> C++ VS C#(1):注釋,變量,控制台輸出

C++ VS C#(1):注釋,變量,控制台輸出

編輯:C++入門知識

//=====================================================================
//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++來說是這樣:    unsigned int abc;

    但對於C#來說,則更為簡潔:    uint abc;
 

    如果以表的形式,也許我們更清楚看到這兩者的區別:

類型
 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:    printf(“%d,%s”,iVal,strVal.c_str());
 

    C++的流形式:    std::cout<< iVal<<strVal<<std::endl;
 

    C#的Console:    Console.WriteLine(“{0} {1}”, iVal, strVal);
 

    拋開C++的流形式不談,C#的Console其實和printf有點像,只不過C#是使用{x}的形式,而C++則是%。另外一點就是,C++是必須指定類型的,比如%d為數字,而%s為字符串,而C#如果不想更改原意,只需要使用{x}來標明輸出的位置即可。

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved