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

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

在sa f()格式字符串中尾隨空格的效果如何?

在sa f()格式字符串中尾隨空格的效果如何?

C
婷婷同學(xué)_ 2019-06-17 16:17:00
在sa f()格式字符串中尾隨空格的效果如何?有什么區(qū)別scanf("%d")和scanf("%d ")在這段代碼中,格式字符串中的尾部空白有什么區(qū)別?#include <stdio.h>int main(void){     int i, j;     printf("enter a value for j ");     scanf("%d  ",&j);     printf("j is %d\n", j);     printf("enter a value for i ");     scanf("%d", &i);     printf("i is %d\n", i);     return 0;}如何scanf()函數(shù)在格式說(shuō)明符后面添加空格時(shí)實(shí)際工作,如scanf("%d  ", &j);?
查看完整描述

3 回答

?
慕仙森

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

掃描格式的空白字符會(huì)導(dǎo)致它顯式地讀取和忽略盡可能多的空白字符。所以scanf("%d ", ...,在讀取一個(gè)數(shù)字之后,它將繼續(xù)讀取字符,放棄所有空白,直到它在輸入中看到一個(gè)非空白字符。該非空白字符將保留為輸入函數(shù)要讀取的下一個(gè)字符。

使用您的代碼:

printf("enter a value for j ");scanf("%d  ",&j);printf("j is %d \n", j);

它將打印第一行,然后等待您輸入一個(gè)數(shù)字,然后之后繼續(xù)等待某事號(hào)碼。所以如果你只是鍵入5進(jìn)入,它將出現(xiàn)掛起-您需要鍵入另一行與一些非空白字符在其中繼續(xù)。如果你然后鍵入6進(jìn)入,這將成為i,所以您的屏幕將類似于:

enter a value for j 56j is 5enter a value for i i is 6

此外,由于大多數(shù)scanf%-轉(zhuǎn)換也跳過(guò)前導(dǎo)空格(除%c%[%n)、空間以前%-轉(zhuǎn)換是不相關(guān)的("%d""  %d"將采取同樣的行動(dòng))。因此,在大多數(shù)情況下,除非您知道您特別需要它們的特殊效果,否則您應(yīng)該避免掃描轉(zhuǎn)換中的空格。


查看完整回答
反對(duì) 回復(fù) 2019-06-17
?
白衣染霜花

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

格式字符串中的空白字符(空格、換行符、水平和垂直制表符)與輸入中任意數(shù)量的空白字符匹配。
在你的第一個(gè)案例中

  scanf("%d  ",&j);

當(dāng)它遇到空白字符(Wsc)時(shí)' '然后,它將吃掉用戶輸入的所有空白,包括\n論壓榨進(jìn)入它將有望進(jìn)入一個(gè)非WSC。在這種情況下,您的程序?qū)⑼ㄟ^(guò)按下克特 + Z.


查看完整回答
反對(duì) 回復(fù) 2019-06-17
?
紅糖糍粑

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

中的空格字符scanf格式匹配任意數(shù)量的空白字符,如isspace..因此,如果您有尾隨空格、換行符、制表器或任何其他空格字符,那么它也將被scanf在它回來(lái)之前。


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

添加回答

舉報(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)