亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

用c++實現(xiàn)將文本每個單詞首字母轉換為大寫

 更新時間:2013年05月29日 16:08:50   作者:  
本篇文章是對用c++實現(xiàn)將文本每個單詞首字母轉換為大寫的方法進行了詳細的分析介紹,需要的朋友參考下
利用C++,讀入一個英文文本,并將文本中的每個英文單詞首字母大寫。
本程序練習了從一個文本中讀入流,用到了fstream流。 在文本的轉換過程中,用到了isalpha()——是否是字母,toupper()——轉換為大寫字符 這兩個函數(shù)(針對string對象的單個字符的操作。類似的操作還有isalnum()——是否是字母或數(shù)字,iscntrl()——是否是控制字符, isdigit()——是否是數(shù)字,isgraph()——是否不是空格,但可以打印,islower()——是否是小寫字母, isprint()——是否是可以打印的字符,ispunct()——是否是標點符號,isspace()——是否是空格,isupper()——是否是大寫字母,isxdigit()——是否是十六進制數(shù),tolower()——轉換為小寫。
復制代碼 代碼如下:

#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
 //讀出文件到控制臺
 char buffer[500];
 string str;
 ifstream ifs; //提供讀文件功能
 ifs.open("d:\\com.txt",ios::in);//in--打開文件做讀操作
 cout << "d:\\com.txt" << "中的內容如下:" << endl;
 while(!ifs.eof())  //判斷是否達到stream的結尾
 {
  ifs.getline(buffer, 500, '\n'); //字符達到256個或遇到換行就結束
  str = buffer;
  if (str.empty()) // 如果某行為空,則跳過
  {
   continue;
  }
  else
  {
   if (isalpha(str[0]))
   {
    str[0] = toupper(str[0]);
   }
   for (string::size_type index = 1; index != str.size(); index++)
   {
    //str[index]為字母,且它前面的不為字母,則大寫
    if (isalpha(str[index]) && !isalpha(str[index-1]))
    {
     str[index] = toupper(str[index]);  //注意這里轉化之后要賦一下值
    }
   }
  }
  cout << str << endl;
 }
 ifs.close();
}

相關文章

  • linux C 打印錯誤信息和標準輸入輸出詳細介紹

    linux C 打印錯誤信息和標準輸入輸出詳細介紹

    這篇文章主要介紹了linux C 打印錯誤信息和標準輸入輸出詳細介紹的相關資料,需要的朋友可以參考下
    2016-12-12
  • C++中string使用+號與int拼接方式

    C++中string使用+號與int拼接方式

    這篇文章主要介紹了C++中string使用+號與int拼接方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • 篩選法的C++實現(xiàn)

    篩選法的C++實現(xiàn)

    篩選法又稱篩法,是求不超過自然數(shù)N(N>1)的所有質數(shù)的一種方法。據(jù)說是古希臘的埃拉托斯特尼(Eratosthenes,約公元前274~194年)發(fā)明的,又稱埃拉托斯特尼篩子
    2013-10-10
  • C++聚合體初始化aggregate initialization詳細介紹

    C++聚合體初始化aggregate initialization詳細介紹

    這篇文章主要介紹了C++聚合體初始化aggregate initialization,C++有很多初始化對象的方法。其中之一叫做 聚合體初始化(aggregate initialization) ,這是聚合體專有的一種初始化方法
    2023-02-02
  • C++實現(xiàn)當前時間動態(tài)顯示的方法

    C++實現(xiàn)當前時間動態(tài)顯示的方法

    這篇文章主要介紹了C++實現(xiàn)當前時間動態(tài)顯示的方法,涉及C++時間操作及Sleep方法的使用,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • FFmpeg實戰(zhàn)之分離出PCM數(shù)據(jù)

    FFmpeg實戰(zhàn)之分離出PCM數(shù)據(jù)

    PCM(Pulse?Code?Modulation,脈沖編碼調制)音頻數(shù)據(jù)是未經壓縮的音頻采樣數(shù)據(jù)裸流,它是由模擬信號經過采樣、量化、編碼轉換成的標準數(shù)字音頻數(shù)據(jù)。本文將通過FFmpeg實現(xiàn)分離PCM數(shù)據(jù),感興趣的可以了解一下
    2023-02-02
  • vscode+qt5+cmake編譯調試過程解析

    vscode+qt5+cmake編譯調試過程解析

    這篇文章主要介紹了vscode+qt5+cmake編譯調試過程解析,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-03-03
  • C++調用Matlab函數(shù)求特征值

    C++調用Matlab函數(shù)求特征值

    這篇文章主要為大家詳細介紹了C++調用Matlab函數(shù)求特征值,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-06-06
  • 詳解OpenMP的線程同步機制

    詳解OpenMP的線程同步機制

    在本篇文章當中主要給大家介紹?OpenMP?當中線程的同步和互斥機制,在?OpenMP?當中主要有三種不同的線程之間的互斥方式。下面就來和大家來討論一下OpenMP當中的互斥操作,需要的可以參考一下
    2023-01-01
  • 16種C語言編譯警告(Warning)類型的解決方法

    16種C語言編譯警告(Warning)類型的解決方法

    由于編譯的警告各種各樣,根本不可以一一羅列出來,下面只是列舉出比較典型的十六種警告,還有一些警告,大家只要根據(jù)字面意思,就可以很快的查找出來,并解決之。希望對大家有所幫助。
    2014-08-08

最新評論