C語言 格式說明符(小技巧)

前些日子看書看到的一個C語言的格式說明符----%n ,蠻有意思的,拿來與大家分享下。

printf可不只是一個輸出函數哦,這個%n就是把字符串的長度,寫進一個變量。

看代碼吧,好理解。

複製代碼
#include <stdio.h>

void main()
{
    int lenA;
    int lenB;
    printf("Hello%n\n",&lenA);
    printf("Hello%n World!\n",&lenB);
    printf("%d\n",lenA);
    printf("%d\n",lenB);
}
複製代碼

 

最後輸出的lenA,lenB的都是5;那說明獲得字符串的長度只是%n前面的。

蠻有意思的吧,以前以爲printf只是個輸出函數,沒想到也可以當輸入用。

------------------------------------------------------------------------------------------------------------------------

--------------錯誤記錄---------------

當C用malloc或C++中new動態分配內存時,一定要在合適的時候釋放掉,我今天就是沒有釋放動態的分配內存。

還有就是sizeof不能對於動態分配內存的指針使用,這可是要記得啊,我今天在這上面可是栽了個跟頭啊,如果你這樣寫了,那可是調試都都調試不出來的,我就是這樣,明明調試正確,一運行就出錯。

寫下自己的錯誤,也希望看過的人,以後可可以避免·····

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章