C語言printf()與scanf()返回值


1.printf()

​ 在C語言中printf()函數不僅可以將指定信息打印輸入到屏幕上,同時這個函數在執行的過程中會存在一個返回值,這個返回值就是所要輸出字符串的字符數(包括空格和換行符)

#include <stdio.h>
int main(void){
    int c;
    int a=1111;
    c = printf("%dsgsgrg\n",a);
    printf("%d\n",c);
    return 0;
}

結果:

1111sgsgrg
11

包括\n換行符。

2.scanf()

​ scanf()在C語言中一般是讀取輸入的字符,也就是輸入的功能(在實際環境中因為容易出現“堆棧溢出”或“緩沖區溢出”等安全問題,所以可能用的並不多)。當然scanf()也存在返回值,它的返回值為從輸入讀取成功的變量數,如果類型(數值和字符)不同,則是讀取失敗,返回0。

#include <stdio.h>
int main(void){
    int c;
    int a;
    int b;
    int d;
    c = scanf("%d %d %d %d",&a,&b,&d);
    printf("%d\n",c);
    return 0;
}
54 56 56 44
4

注:以此代碼為例,如果在輸入時不是輸入了數值,而是字符,程序則不會讀取字符及其以后要輸入的內容(后面的讀取全部失敗)。

56 fd 87 ee
1


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM