在c++中,#include與#include的區別,前者要使用更新的編譯器(其實大部分編譯器多比較前衛了,出了有些搞嵌入式的用**的編譯器)。
喔,原來iostream是c++的標頭檔案,iostream.h是c的標頭檔案,即標準的c++標頭檔案沒有.h副檔名,將以前的c的標頭檔案轉化為c++的標頭檔案後,有時加上c的字首表示來自於c,例如cmath就是由math.h變來的。
using namespace std //使用名字空間(使用所有)
using namespace std::cout//只使用cout
如不用using,則在**前可以用sdt::cout《表示使用的是std中的cout。
#include//
必須要加上.h
void main()
{ cout<<"right?"
#include//
此處必須去掉.h
using
namespace std ;
void main()
{ string s;
getline(cin,s);
cout<<"right?"<
iostream.h裡面定義的所有類以及物件都是在全域性空間裡,所以你可以直接用cout
但在iostream裡面,它所定義的東西都在名字空間std裡面,所以你必須加上
using namespace std才能使用cout
一般乙個c++的老的帶「.h」副檔名的庫檔案,比如iostream.h,在新標準後的標準庫中都有乙個不帶「.h」副檔名的相對應,區別除了後者的好多改進之外,還有一點就是後者的東東都塞進了「std」名字空間中。
但唯獨string特別。
問題在於c++要相容c的標準庫,而c的標準庫里碰巧也已經有乙個名字叫做「string.h」的標頭檔案,包含一些常用的c字串處理函式,比如樓主提到的strcmp。
這個標頭檔案跟c++的string類半點關係也沒有,所以並非的「公升級版本」,他們是毫無關係的兩個標頭檔案。
要達到樓主的目的,比如同時:
#include
#include
using
namespace std;
或者 #include
#include
其中是與c標準庫的相對應,但裹有std名字空間的版本。
最大的挑戰是把字串標頭檔案理清
楚:是舊的c 標頭檔案,對應的是基於char*的字串處理函式;
是包裝了std 的c++標頭檔案,對應的是新的string 類(看下文);是對
應於舊c 標頭檔案的std 版本。如果能掌握這些(我相信你能),其餘的也就容易了。
綜上所述:
是c++ 的標頭檔案,其內包含了乙個string類,string s1就是建立乙個string類的物件
的c語言的東西 並無類,所以不能 string s1
檔案實際上只是在乙個命名空間std中include了 ,…
oracle中 與 以及 的區別
是賦值語句 是判斷是否相等.是變數繫結 其中,變數繫結 是指在sql語句的條件中使用變數而不是常量。比如shared pool裡有兩條sql語句,select from tab1 where col1 1 select from tab1 where col1 2 對oracle資料庫來說,這是兩條...
事務,以及與鎖的區別
1.基本概念 事務,一般是指要做的或所做的事情。在計算機術語中是指訪問並可能更新資料庫中各種資料項的乙個程式執行單元 unit 2 特性 事務應該具有4個屬性 原子性 一致性 隔離性 永續性。這四個屬性通常稱為acid特性。原子性 atomicity 乙個事務是乙個不可分割的工作單位,事務中包括的諸...
URL URI 以及區別與聯絡
url 統一資源定位符 url 是對可以從網際網路上得到的資源的位置和訪問方法的一種簡潔的表示。url 給資源的位置提供一種抽象的識別方法,並用這種方法給資源定位。只要能夠對資源定位,系統就可以對資源進行各種操作,如訪問 更新 替換和查詢其屬性。url 相當於乙個檔名在網路範圍的擴充套件。因此 ur...