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

C++ 實(shí)現(xiàn)輸入含空格的字符串

 更新時(shí)間:2020年12月09日 10:50:47   作者:zhouhongkai06  
這篇文章主要介紹了C++ 實(shí)現(xiàn)輸入含空格的字符串,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

1、scanf函數(shù)(包含頭文件#include <stdio.h>)

scanf函數(shù)一般格式為scanf(“%s”,st),但scanf默認(rèn)回車和空格是輸入不同組之間的間隔和結(jié)束符號(hào),所以輸入帶空格,tab或者回車的字符串是不可以的。

解決方法如下:

1. 利用格式符“%[]”它的作用為掃描字符集合。

Scanf(“%[^c]”,str); 其中“c”是一個(gè)具體的字符常量(包括控制字符)。

當(dāng)輸入字符串時(shí),字符“c”將被當(dāng)作當(dāng)前輸入的結(jié)束符。

利用此格式符就可以由編程者自己指定一個(gè)輸入結(jié)束符。

例如:

scanf("%[a-z A-Z0-9]",str)表示只匹配輸入是大小寫字母和數(shù)字,遇到非數(shù)字和字母時(shí)輸入結(jié)束。

例如:

int main() 
{
 char st[50];
 scanf("%[^\n]",st);// \n作為字符串輸入的結(jié)束符
 printf("%s",st);
 return 0;
}

2. cin(包含頭文件#include <iostream>)

cin是C++中最常用的輸入語(yǔ)句,當(dāng)遇到空格或者回車鍵即停止。無(wú)法解決。

3. gets()

可以無(wú)限讀取,以回車結(jié)束讀取,C語(yǔ)言中的函數(shù),在C++中運(yùn)行會(huì)產(chǎn)生bug。在C11標(biāo)準(zhǔn)中已被正式刪除,建議不要用?。?!

4. getline()(包含頭文件#include <string>)

若定義變量為string類型,注意不是字符型數(shù)組。則要考慮getline()函數(shù)。

用法如下:

int main() 
{ 
 string st; 
 getline(cin,st); 
 cout<<st<<endl;
 return0; 
}

5.cin.get (char *str, int maxnum)

cin.get()函數(shù)可以接收空格,遇回車結(jié)束輸入。

int main() 
{ 
 char st[50]; 
 cin.get(st,50); 
 cout<<a<<endl;// 輸出也可以用printf("%s",st); 
 return0; 
}

6.cin.getline (char *str, int maxnum)(包含頭文件#include <string>)

cin.getline()函數(shù)可以同cin.get()函數(shù)類似,也可接收空格,遇回車結(jié)束輸入。

int main() 
{ 
 char st[50]; 
 cin.getline(a,50); 
 cout<<a<<endl; // 輸出也可以用printf("%s",st); 
 return0; 
}

7. 字符串類型轉(zhuǎn)換為字符數(shù)組

(a)c_str() 
 char p[50]; 
 string str="I Love Ningbo!"; 
 strcpy(p,str.c_str()); 
 printf("%s",p);
 
(b)data()
 char p[50]; 
 string str="I Love Ningbo!"; 
 strcpy(p,str.data()); 
 printf("%s",p);

補(bǔ)充知識(shí):c++ cin輸入空格

直接添加一行代碼:

cin >> noskipws;

noskipws

實(shí)例:

#include<iostream>
using namespace std;
int main()
{
 cin >> noskipws;//設(shè)置cin讀取空白符;
 char c;
 size_t acount =0, ecount =0, icount =0, ocount =0, ucount = 0,scount = 0;
 while (cin >> c)
 {
 if (c == 'a')++acount;
 if (c == 'e')++ecount;
 if (c == 'i')++icount;
 if (c == 'o')++ocount;
 if (c == 'u')++ucount;
 if (c == ' ')++scount;
 }
 cout << "a: " << acount << endl;
 cout << "e: " << ecount << endl;
 cout << "i: " << icount << endl;
 cout << "o: " << ocount << endl;
 cout << "u: " << ucount << endl;
 cout << "space: " << scount << endl;
 return 0;
}

***運(yùn)行結(jié)果:***

以上這篇C++ 實(shí)現(xiàn)輸入含空格的字符串就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • C++ random_shuffle()方法案例詳解

    C++ random_shuffle()方法案例詳解

    這篇文章主要介紹了C++ random_shuffle()方法案例詳解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • Matlab制作視頻并轉(zhuǎn)換成gif動(dòng)態(tài)圖的兩種方法

    Matlab制作視頻并轉(zhuǎn)換成gif動(dòng)態(tài)圖的兩種方法

    這篇文章主要介紹了Matlab制作視頻并轉(zhuǎn)換成gif動(dòng)態(tài)圖的兩種方法,第一種方法使用movie(f)直接取生成AVI視頻文件,相對(duì)來(lái)說(shuō)比較簡(jiǎn)單,需要的朋友可以參考下
    2018-08-08
  • 深入分析C語(yǔ)言存儲(chǔ)類型與用戶空間內(nèi)部分布

    深入分析C語(yǔ)言存儲(chǔ)類型與用戶空間內(nèi)部分布

    這篇文章主要介紹了C語(yǔ)言存儲(chǔ)類型與用戶空間內(nèi)部分布,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧
    2022-12-12
  • wince禁止程序標(biāo)題欄上的退出按鈕示例

    wince禁止程序標(biāo)題欄上的退出按鈕示例

    這篇文章主要介紹了wince禁止程序標(biāo)題欄上的退出按鈕示例,需要的朋友可以參考下
    2014-02-02
  • 淺析C++元組tuple類型

    淺析C++元組tuple類型

    元組tuple是C++的一個(gè)模板,不同tuple類型的成員類型也不相同,但是一個(gè)tuple可以有任意數(shù)量的成員,今天通過(guò)本文給大家介紹C++元組tuple類型,感興趣的朋友一起看看吧
    2022-06-06
  • Qt實(shí)現(xiàn)繪制多個(gè)設(shè)備的流量曲線圖詳解

    Qt實(shí)現(xiàn)繪制多個(gè)設(shè)備的流量曲線圖詳解

    這篇文章主要為大家詳細(xì)介紹了如何使用Qt開發(fā)繪制多個(gè)設(shè)備的流量曲線圖,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Qt有一定的幫助,需要的可以參考一下
    2023-01-01
  • C語(yǔ)言超全面講解函數(shù)的使用方法上

    C語(yǔ)言超全面講解函數(shù)的使用方法上

    函數(shù)是一組一起執(zhí)行一個(gè)任務(wù)的語(yǔ)句。每個(gè)?C?程序都至少有一個(gè)函數(shù),即主函數(shù)?main()?,所有簡(jiǎn)單的程序都可以定義其他額外的函數(shù),由于篇幅過(guò)大,分為兩篇講解,下面開始上篇
    2022-04-04
  • QML與C++幾種交互方式

    QML與C++幾種交互方式

    QML作為構(gòu)建界面的語(yǔ)言是非常簡(jiǎn)潔的,但是界面的后臺(tái)有些時(shí)候是經(jīng)常要與C++交互的,本文主要介紹了QML與C++幾種交互方式,感興趣的可以了解一下
    2024-04-04
  • C++使用MySQL-Connector/C++連接MySQL出現(xiàn)LNK2019錯(cuò)誤的解決方法

    C++使用MySQL-Connector/C++連接MySQL出現(xiàn)LNK2019錯(cuò)誤的解決方法

    這篇文章主要介紹了C++使用MySQL-Connector/C++連接MySQL出現(xiàn)LNK2019錯(cuò)誤的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • 虛函數(shù)表-C++多態(tài)的實(shí)現(xiàn)原理解析

    虛函數(shù)表-C++多態(tài)的實(shí)現(xiàn)原理解析

    這篇文章主要介紹了虛函數(shù)表-C++多態(tài)的實(shí)現(xiàn)原理,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-02-02

最新評(píng)論