1樓:匿名使用者
你可以從string字串得到c風格字串,再用sscanf處理或者用string構造個string流, 按cin使用#include
#include
#include
using namespace std;
int main()
2樓:匿名使用者
沒有long和string互相轉換的,但是有long(還有int,double,float等)和char*互相轉化的函式,sprintf函式和sscanf函式。因此可以用char*作為中間型別
long轉換為string的一個解決方案:
可以先用sprintf函式把long轉換為char*,然後char*直接可以賦給string。
string轉換為long的一個解決方案
先用string的成員函式c_str()轉化為char*,再用sscanf函式將char*轉為long。
sscanf和sprintf是c函式,標頭檔案stdio.h,用法和scanf、printf相似
3樓:匿名使用者
string有成員函式的,直接用》的話要把它轉成stream
4樓:匿名使用者
用sprintf,sscanf
c++中 怎麼從string類變數中讀取一個字元
5樓:匿名使用者
有兩種方式
string str = "asdf";
一是str[i],
二是str.at(i);
i都是0-base,即i=0,時,結果是a,i=1,結果s
6樓:匿名使用者
直接用索引,類似於陣列,比如:
string a = "hello";
a[0];//表示'h'
7樓:鄢畫象星漢
尋找一個字串中是否包含一串已經輸入的字元,如果不區分大小寫怎麼辦?
使用strstr函式。但strstr找得到的話返回找到的位置,找不到的話返回null87
c++語言中怎麼從「string」類變數中讀取一個字元?
8樓:水溥心
有兩種方式
string str = "asdf";
一是str[i],
二是str.at(i);
i都是0-base,即i=0,時,結果是a,i=1,結果s
c++中怎樣將一個檔案的內容讀取到string型別的字串中。謝謝!
9樓:匿名使用者
fstream fs( "file.txt" ) ; // 建立個檔案流物件,並開啟"file.txt"
stringstream ss ; // 建立字串流物件
ss << fs.rdbuf() ; // 把檔案流中的字元輸入到字串流中
string str = ss.str() ; // 獲取流中的字串
10樓:匿名使用者
用檔案流 需要標頭檔案cstdio
freopen("a.in","r",stdin);
freopen(a.out","w",stdout);
string i;
getline(cin,i,'\n');
cout<
fclose(stdin);
fclose(stdout);
11樓:金色潛鳥
先將檔案全部讀入 char* 變數。再用 string 類 構建函式建一個string 物件,在把 char* 內容放入。
下面是將檔案全部讀入char * buffer;
/* fread example: read an entire file */
#include
#include
int main ()
// obtain file size:
fseek (pfile , 0 , seek_end);
lsize = ftell (pfile);
rewind (pfile);
// allocate memory to contain the whole file:
buffer = (char*) malloc (sizeof(char)*lsize);
if (buffer == null)
// copy the file into the buffer:
result = fread (buffer,1,lsize,pfile);
if (result != lsize)
/* the whole file is now loaded in the memory buffer. */
// terminate
fclose (pfile);
free (buffer);
return 0;
}構建函式建一個string 物件,把 char * buffer 內容存入 程式部分,請自己補充:
#include
#include
#include
using namespace std;
#include
// 插入上面程式 .....
// 補充
string sss;
sss.assign(buffer,result);
cout << sss << endl;
c++如何判斷string 型別裡面為純數字
12樓:
||bool isdigit2(string str) }return true;
} int main()
system("pause");
return 0;}
13樓:心_一_泉
不用ascll碼了,直接拿字元與'0'和'9'比較,例如: a>'0'&& a<'9',a為一個字元。
14樓:匿名使用者
比較字串每一個ascii碼,在'0'和'9'區間上的話就是數字,具體如下:
********************===
#include
#include
#define isdigital(x) (((x)>='0') && ((x) <= '9'))
using std::string;
int main(void)
*****==
isdigtal巨集是用來判斷一個字元是不是數字的(通過比較ascii碼)
主程式中通過一個迴圈,測試每一個字元是不是數字,當且僅當所有分量全為數字時,該迴圈是flag返回真,最後根據其值判斷即是
15樓:
根據ascii字元表,我是忘記了,每一個字元都是有值的,你看看0-9的值是多少,輸入的每一個字元檢查是不是在這個範圍,在就是數字,不在就不是數字然後報錯。
c++中如何將一串數字string類轉換成整型,
16樓:
你可以先呼叫string的c_str(),函式,該函式一個指向正規c字串的指標, 內容與本字串相同,然後呼叫atoi()函式就可以了啊,下面是一個簡單的測試程式:
#include
using namespace std;
int main().
17樓:小傻
c++中可以使用庫函式atoi:
一、函式名:atoi
二、函式宣告:
int atoi(const char *nptr);
三、標頭檔案:
c語言中用stdio.h。
c++中用cstdio。
四、功能:
將字串nptr中的字元轉成數字並返回。具體過程為:
引數nptr字串,如果第一個非空格字元存在,是數字或者正負號則開始做型別轉換,之後檢測到非數字(包括結束符 \0) 字元時停止轉換,返回整型數。否則,返回零。
五、引數:
nptr, 要轉換的字串。如果為null會出錯。
六、返回值:
轉換後的整型數值。
七、示例**:
#include
#include
using namespace std;
int main()
關於C中的String類
1.只能p null不能 p null否則你是給一個char賦值null 2.上面不對 應該是小寫 1.下面執行時為什麼會出錯!char p null string str p 按上面string類的普通建構函式,這裡應該允許傳null!你這裡的 string 是標準的 string,而不是上面的 ...
C中的string和String有什麼區別
string是c 中的類,string是.netframework的類 在c ide中不會顯示藍色 c string對映為.net framework的string 如果用string,編譯器會把它編譯成string,所以如果直接用string就可以讓編譯器少做一點點工作 如果使用c 建議使用str...
C 中如何讀取中的座標資料,C 中如何讀取txt文件中的座標資料?
include include inline bool check double const x int main int const arc,char const arg std ifstream file arg 1 if file int num double x,y,z int cnt 0 ...