第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

使用C ++ ifstream從文本文件讀取整數(shù)

使用C ++ ifstream從文本文件讀取整數(shù)

C++
慕碼人8056858 2019-12-03 10:52:01
我想從文本文件中讀取圖鄰接信息并將其存儲(chǔ)到向量中。該文件具有任意行每行都有任意數(shù)量的以'\ n'結(jié)尾的整數(shù)例如,F(xiàn)irst line:0 1 4Second line:1 0 4 3 2Thrid line:2 1 3Fourth line:3 1 2 4Fifth line:4 0 1 3如果我使用getline()一次讀取一行,該如何解析該行(因?yàn)槊恳恍卸加锌勺償?shù)量的整數(shù))?有什么建議么?
查看完整描述

3 回答

?
一只萌萌小番薯

TA貢獻(xiàn)1795條經(jīng)驗(yàn) 獲得超7個(gè)贊

首先使用std::getline函數(shù)讀取一行,然后使用std::stringstream來(lái)從該行讀取整數(shù),如下所示:


std::ifstream file("input.txt");


std::vector<std::vector<int>> vv;

std::string line;

while(std::getline(file, line))

{

    std::stringstream ss(line);

    int i;

    std::vector<int> v;

    while( ss >> i ) 

       v.push_back(i);

    vv.push_back(v);

}

您還可以將循環(huán)體編寫(xiě)為:


while(std::getline(file, line))

{

    std::stringstream ss(line);

    std::istream_iterator<int> begin(ss), end;

    std::vector<int> v(begin, end);

    vv.push_back(v);

}

這看起來(lái)更短,更好。或合并-最后兩行:


while(std::getline(file, line))

{

    std::stringstream ss(line);

    std::istream_iterator<int> begin(ss), end;

    vv.push_back(std::vector<int>(begin, end));

}

現(xiàn)在不要將其縮短,因?yàn)樗雌饋?lái)很丑。


查看完整回答
反對(duì) 回復(fù) 2019-12-03
  • 3 回答
  • 0 關(guān)注
  • 1782 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)