sscanf 的函數原形如下,其中的format 格式字串具有複雜的格式指定功能,以下我們將詳細說明這些格式的用途。 int sscanf ( const char * str, const char * format, ...); ... ... <看更多>
sscanf回傳值 在 uva_tutorial.c - Discover gists · GitHub 的推薦與評價
你每次#include <stdio.h> 就相當於在你的程式一開始就有一行. const int EOF = -1;. 不要搞錯了,輸入的最後並沒有EOF 這一行。EOF 是scanf 這個函式的回傳值。 ... <看更多>
sscanf回傳值 在 [問題] scanf函數的回傳值- 看板C_and_CPP 的推薦與評價
以下是C scanf函式的原型
函式原型:int scanf ( const char * format, ... );
引數說明:%[*][width][modifiers]type
%[*][寬度][長度修飾]資料型態
傳回值:成功配對之引數數目,失敗時將傳回 EOF
請問下面這兩支程式作對比
兩支程式執行後在命令提示字元下輸入相同格式
ss(整數) (整數)
第一支程式scanf函式回傳為TURE
可是第二支程式的第二個scanf函式回傳值卻是FALSE
是甚麼原因?
是因為scanf格式輸入錯誤?
如果是編譯怎麼會成功呢??
感謝!!!
(1).
#include <stdio.h>
#include <stdlib.h>
int main ()
{
int b,c;
printf("請輸入整數:");
c=scanf("ss%d",&b);
printf("\n\nscanf的回傳值為%d\n\n",c);
printf("\n\n你的輸入為%d\n\n",b);
system("pause");
return 0;
}
(2).
#include <stdio.h>
#include <stdlib.h>
int main ()
{
int a,b,c;
printf("請輸入整數:");
scanf("%d",&a);
printf("\n\n你的輸入為%d\n\n",a);
printf("請輸入整數:");
c=scanf("ss%d",&b);
printf("\n\n第二個scanf的回傳值為%d",c);
printf("\n\n你的輸入為%d\n\n",b);
system("pause");
return 0;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.137.231.238
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1557132145.A.440.html
※ 編輯: a27839579 (223.137.231.238), 05/07/2019 17:06:10
... <看更多>
相關內容