最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

c++統(tǒng)計文件中字符個數(shù)代碼匯總

 更新時間:2015年09月23日 09:00:09   投稿:hebedich  
本文給大家匯總介紹了3種使用C++實現(xiàn)統(tǒng)計文件中的字符個數(shù)的方法,非常的簡單實用,有需要的小伙伴可以參考下。

我們先來看看下面的代碼:

#include<iostream>
#include<fstream>
#include<cstdlib>
using namespace std;
class CntCharacters
{
private:
  int cnt;
public:
  CntCharacters():cnt(0){}
  ~CntCharacters(){}
  void opentxt(char* p)
  {
    ifstream fin;
    fin.open(p,ios_base::in);
    if(!fin.is_open())
    {
     cout<<"cannot open the file,Please make sure the file is exist!\n";
     exit(-1);
    }
    char temp;
    while(!fin.eof())
    {
     fin>>temp;
     if((temp>='a'&&temp<='z')||(temp>='A'&&temp<='Z'))cnt++;
    }
  }
  void countthecharacter()
  {
   int count=0;
   char nameoffile[80];
   cout<<"Please enter the name of file:";
   cin>>nameoffile;
  //  scanf("%s",nameoffile);
   opentxt(nameoffile);
  }
  void dis()
  {
   cout<<cnt<<endl;
  }
};
int main()
{
  CntCharacters* c=new CntCharacters;
  c->countthecharacter();
  c->dis();
  delete c;
return 0;
}

網(wǎng)上大神的簡單代碼

#include<iostream>
#include<fstream>
using namespace std;
int main()
{
  fstream f("test.txt",ios::in);
  char c;
  int n=0;
  while(f.get(c))n++;
  cout<<n<<endl;
  f.close(); 
  return 0; 
}

上面那方法會計算空格和換行,如果不想要換行和空格,可以這樣:

#include<iostream>
#include<fstream>
using namespace std;
int main()
{
  fstream f("test.txt",ios::in);
  char c;
  int n=0;
  while(f>>c)n++;
  cout<<n<<endl;
  f.close(); 
  return 0; 
}

好了,最后來看一下項目中使用到的代碼

//countch.cpp
#include <iostream>
#include <fstream>
#include <string>

using namespace std;

int main(int argc, char* argv[])
{
  ifstream fin(argv[1]);
  if (!fin) {
    cout << "Can't open file - " << argv[1] 
      << "\nUseage : countch filename" << endl;
    return 1;
  }
  
  string d;
  int count = 0;
  while ( getline(fin, d) ) //以行為單位讀入文件
    count += d.size(); //累計字符數(shù)
  
  cout << "\n Number of characters : "<< count << endl;
}

相關(guān)文章

  • C++基于Boost庫實現(xiàn)命令行解析

    C++基于Boost庫實現(xiàn)命令行解析

    Boost庫中默認(rèn)自帶了一個功能強大的命令行參數(shù)解析器,以往我都是自己實現(xiàn)參數(shù)解析的,今天偶爾發(fā)現(xiàn)這個好東西,就來總結(jié)一下參數(shù)解析的基本用法,該庫需要引入program_options.hpp頭文件,即可使用了
    2021-06-06
  • C++數(shù)據(jù)結(jié)構(gòu)鏈表基本操作示例過程

    C++數(shù)據(jù)結(jié)構(gòu)鏈表基本操作示例過程

    這篇文章主要為大家介紹了C++數(shù)據(jù)結(jié)構(gòu)鏈表基本操作的示例過程有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪
    2021-11-11
  • C語言中的冒泡排序問題

    C語言中的冒泡排序問題

    這篇文章主要介紹了C語言中的冒泡排序問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • 關(guān)于C語言中數(shù)據(jù)在內(nèi)存中的存儲詳解

    關(guān)于C語言中數(shù)據(jù)在內(nèi)存中的存儲詳解

    這篇文章主要給大家介紹了關(guān)于C語言中數(shù)據(jù)在內(nèi)存中的存儲的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • Qt+Quick實現(xiàn)圖片演示器的開發(fā)

    Qt+Quick實現(xiàn)圖片演示器的開發(fā)

    這篇文章主要為大家詳細(xì)介紹了Qt如何利用Quick實現(xiàn)圖片演示器的開發(fā),文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)Qt有一定的幫助,需要的可以參考一下
    2023-01-01
  • codeblocks 對‘cv::waitKey(int)’未定義的引用方式

    codeblocks 對‘cv::waitKey(int)’未定義的引用方式

    今天小編就為大家分享一篇codeblocks 對‘cv::waitKey(int)’未定義的引用方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • MFC實現(xiàn)全屏功能代碼實例

    MFC實現(xiàn)全屏功能代碼實例

    這篇文章主要介紹了MFC實現(xiàn)全屏功能的代碼,對于學(xué)習(xí)MFC有一定的借鑒價值,需要的朋友可以參考下
    2014-07-07
  • codeblocks安裝及使用超詳細(xì)圖文教程

    codeblocks安裝及使用超詳細(xì)圖文教程

    這篇文章主要介紹了codeblocks安裝及使用教程詳解,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-01-01
  • 排序算法模板實現(xiàn)示例分享

    排序算法模板實現(xiàn)示例分享

    這篇文章主要介紹了排序算法模板實現(xiàn)示例,需要的朋友可以參考下
    2014-03-03
  • C/C++實現(xiàn)通訊錄管理系統(tǒng)(附源碼)

    C/C++實現(xiàn)通訊錄管理系統(tǒng)(附源碼)

    這篇文章主要為大家詳細(xì)介紹了如何利用C++實現(xiàn)通訊錄管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-12-12

最新評論

嘉黎县| 耿马| 平罗县| 寻乌县| 陇川县| 新郑市| 于田县| 鄂托克旗| 保靖县| 桃园县| 柏乡县| 浑源县| 延吉市| 武鸣县| 株洲县| 河津市| 榆林市| 攀枝花市| 长岛县| 离岛区| 吉安县| 建水县| 翁牛特旗| 石渠县| 奎屯市| 贵州省| 田东县| 克东县| 措美县| 乌什县| 神木县| 通化县| 大关县| 张掖市| 黑龙江省| 平陆县| 壶关县| 环江| 马关县| 兴义市| 保定市|