當前位置:首頁 » 編程語言 » c語言cin

c語言cin

發布時間: 2022-01-08 04:36:41

『壹』 c語言中是用scanf輸入還是cin

cin是C++
的輸入函數可以接收任何類型。不支持c
語言
scanf
加上過應的格式字元,也能接收任何類型。

『貳』 cin在C語言里是什麼意思

cin是C++編程語言中的標准輸入流對象,即istream類的對象。cin主要用於從標准輸入讀取數據,這里的標准輸入,指的是終端的鍵盤。此外,cout是流的對象,即ostream類的對象,cerr是標准錯誤輸出流的對象,也是ostream 類的對象。這里的標准輸出指的是終端鍵盤,標准錯誤輸出指的是終端的屏幕。

在理解cin功能時,不得不提標准輸入緩沖區。當我們從鍵盤輸入字元串的時候需要敲一下回車鍵才能夠將這個字元串送入到緩沖區中,那麼敲入的這個回車鍵( )會被轉換為一個換行符 ,這個換行符 也會被存儲在cin的緩沖區中並且被當成一個字元來計算!比如我們在鍵盤上敲下了123456這個字元串,然後敲一下回車鍵( )將這個字元串送入了緩沖區中,那麼此時緩沖區中的位元組個數是7 ,而不是6。

cin讀取數據也是從緩沖區中獲取數據,緩沖區為空時,cin的成員函數會阻塞等待數據的到來,一旦緩沖區中有數據,就觸發cin的成員函數去讀取數據。

注意:

(1)cin>>等價於cin.operator>>(),即調用成員函數operator>>()進行讀取數據。

(2)當cin>>從緩沖區中讀取數據時,若緩沖區中第一個字元是空格、tab或換行這些分隔符時,cin>>會將其忽略並清除,繼續讀取下一個字元,若緩沖區為空,則繼續等待。但是如果讀取成功,字元後面的分隔符是殘留在緩沖區的,cin>>不做處理。

(3)不想略過空白字元,那就使用 noskipws 流控制。比如cin>>noskipws>>input;

『叄』 cin>>n在c語言是什麼意思

輸入一個值的意思。

cin是C++編程語言中的標准輸入流對象,即istream類的對象。

cin主要用於從標准輸入讀取數據,這里的標准輸入,指的是終端的鍵盤。cin讀取數據是從緩沖區中獲取數據,緩沖區為空時,cin的成員函數會阻塞等待數據的到來,一旦緩沖區中有數據,就觸發cin的成員函數去讀取數據。

cin的常用讀取方法:

使用cin從標准輸入讀取數據時,通常用到的方法有cin>>,cin.get,cin.getline。

1、cin>>的用法

cin可以連續從鍵盤讀取想要的數據,以空格、tab或換行作為分隔符。

2、cin.get的用法

該函數有有多種重載形式,分為四種格式:無參,一參數,二參數,三個參數。

(1)cin.get讀取一個字元,可以使用cin.get或者cin.get(var)。

(2)讀取一行可以使用istream& get ( char* s, streamsize n )或者istream& get ( char* s, size_t n, streamsize delim )。二者的區別是前者默認以換行符結束,後者可指定結束符。n表示目標空間的大小。

3、cin.getline讀取一行

函數作用:從標准輸入設備鍵盤讀取一串字元串,並以指定的結束符結束。

『肆』 c++里!cin是什麼意思

!cin的意思是用戶輸入的是false(0值)或其它的非0值,當是0值的時候!cin為true,否則為false。

int i;

cin>>i;

表示等待輸入一個int值

是一個全局輸入流對象,在iostream文件裡面聲明,在iostream.cpp裡面定義。這個對象重載了移位符>>。

(4)c語言cin擴展閱讀

cin的使用

# include<iostream>

using namespace std;

int main(void)

{

int a,b;

cout<<"a:_";

cin>>a;//如輸入char就會有多餘的字元漏在緩沖區

cin.clear();//恢復goodbit

cin.sync();//清空緩沖區

cin.clear();

fflush(stdin);

cin.clear();

cin.ignore(次數,'需要結束的字元(這兒就是 )');//一般次數取得足夠大讓結束符起作用,如cin.ignore(6,'a');

cout<<"b:_";

cin>>b;

cout<<"a="<<a<<",b="<<b;

system("pause");

return 0;

}

『伍』 c語言 cin >> sex是什麼意思

c和c++可以說現在都是比較流行的,但是兩者到底有什麼聯系和區別嗎,這是學習c和c++最需要注意的,不要把兩者搞混了,我們先開始就來看一下c和c++有什麼聯系,這兩者可以這樣說:C++是C的超集,兼容大部分C的語法的結構,其實任何語言之間都沒有明顯的界限,C語言是基礎; 所以c++是比c更高級一些吧,他們都是編程語言。但是他們的用法很多都是有不一樣的,來聽一一道來:


首先不同之處一:他們的應用場合是不一樣的

『陸』 C語言中int與cin的區別是什麼

這int是定義數值類型的,cin是用於輸入的,明顯不能通用啊

『柒』 C++ cin的用法

int num_input;

cin >> num_input;

while(cin.fail())

{

cin.clear();

cin.ignore();

cout << "輸入錯誤,請重新輸入"<<endl;

cin >> num_input;

}

(7)c語言cin擴展閱讀

cin 函數用法:cin.get()

char ch;

ch=cin.get();//cin.get(ch) 可接收字元,不管輸入多少,但只能接受第一個

cout << ch << endl;

getchar() //接收一個字元,要包含#include <string>

char ch;

ch=getchar();//括弧裡面無參數cin.get(ch);

cout<<ch;

cin.get(字元數組名,接收字元數目): 用來接收一行字元串,可接收空格

char a[5];

cin.get(a,5);

cout<<a<<endl; //輸出4個字元+1個''

cin.getline() 接收一個字元串,可接收空格並輸出

char a[20];

cin.getline(a,5);//cin.get(a,5);但是沒有結束符號

cout<<a<<endl; //接收5個字元到a中,最後一個是'',所以只看到4個字元輸出。

『捌』 c語言有cin這個東西嗎

cin 是 c++ 里的標准輸入,即從鍵盤輸入,std::cin. c 語言沒有 cin.
c 語言 用 scanf() 函數,需根據變數類型,加上輸入格式。 例如:
int i,j; char info[20];
scanf("%d %d %s",&i, &j, info);

『玖』 C++語言中cin>>a,d;這樣表示對嗎

cin.get()
用法1: cin.get(字元變數名)可以用來接收字元
#include <iostream>
using namespace std;
main ()
{
char ch;
ch=cin.get(); //或者cin.get(ch);
cout<<ch<<endl;
}
輸入:jljkljkl
輸出:j
用法2:cin.get(字元數組名,接收字元數目)用來接收一行字元串,可以接收空格
#include <iostream>
using namespace std;
main ()
{
char a[20];
cin.get(a,20);
cout<<a<<endl;
}
輸入:jkl jkl jkl
輸出:jkl jkl jkl
輸入:abcdeabcdeabcdeabcdeabcde (輸入25個字元)
輸出:abcdeabcdeabcdeabcd (接收19個字元+1個'\0')
用法3:cin.get(無參數)沒有參數主要是用於舍棄輸入流中的不需要的字元,或者舍棄回車,彌補cin.get(字元數組名,接收字元數目)的不足.

cin.peek() 其返回值是一個char型的字元,其返回值是指針指向的當前字元,但它只是觀測,指針仍停留在當前位置,並不後移。如果要訪問的字元是文件結束符,則函數值是EOF(-1)。
其功能是從輸入流中讀取一個字元 但該字元並未從輸入流中刪除
若把輸入流比作一個 棧類 那麼這里的peek函數就相當於棧的成員函數front 而如果cin.get()則相當於棧的成員函數pop。
下面這段代碼能幫助您更清晰地理解peek函數
/ istream peek
#include <iostream>
using namespace std;
int main () {
char c;
int n;
char str[256];
cout << "Enter a number or a word: ";
c=cin.peek();
if ( (c >= '0') && (c <= '9') )
{
cin >> n;
cout << "You have entered number " << n << endl;
}
else
{
cin >> str;
cout << " You have entered word " << str << endl;
}
return 0;
}

『拾』 c/c++ 語言中cin與scanf有什麼不同

c/c++ 語言中cin與scanf區別為:性質不同、操作效率不同、取數據不同。

一、性質不同

1、cin:cin是標准化輸入,包含在頭文件<iostream>中。

2、scanf:scanf是格式化輸入,包含在頭文件<stdio.h>中。

二、操作效率不同

1、cin:cin先把要輸入的東西存入緩沖區,再輸入,導致的輸入操作效率稍低,但書寫簡便。

2、scanf:scanf的是用指針把要輸入的東西輸入的,輸入效率比較高,但是寫代碼麻煩。

三、取數據不同

1、cin:cin的取數據時會忽略空格和回車繼續輸入。

2、scanf:scanf取數據時遇到回車、空格、TAB就會停止。

熱點內容
雲伺服器多個公網ip搭建 發布:2024-04-25 15:13:15 瀏覽:844
phpmysqlupdate 發布:2024-04-25 15:08:15 瀏覽:252
隨時解壓 發布:2024-04-25 14:58:11 瀏覽:67
三率源碼 發布:2024-04-25 14:42:41 瀏覽:467
javastring轉string數組 發布:2024-04-25 14:42:10 瀏覽:136
飢荒如何更改密碼 發布:2024-04-25 14:42:02 瀏覽:743
百度雲如何解壓zip 發布:2024-04-25 14:38:57 瀏覽:570
母豬怎麼配置最好 發布:2024-04-25 14:35:47 瀏覽:75
php按鈕代碼 發布:2024-04-25 14:32:10 瀏覽:725
php數據類型轉換 發布:2024-04-25 14:15:17 瀏覽:750