C語言庫函數中有一批“標準輸入輸出函數”,它是以標準的輸入輸出設備(一般為終端設備)為輸入輸出對象的,其中用得比較多的是printf和scanf函數了。
在嵌入式設備中加入C語言的標準輸入輸出函數,對調試是很有幫助, 這樣就可以通過串口來顯示結果。根據Keil的幫助文檔,雖然printf和scanf函數的高層部分和所使用的目標硬件沒有關系,但是底層部分(物理層)卻與所使用的硬件密切相關,因此在使用這兩個函數之前,需先將與底層相關的程序寫好(一般是串口的初始化函數),放到合適的地方。
- #include <stdio.h>
- void tst_scanf (void) {
- char a;
- int b;
- long c;
- unsigned char x;
- unsigned int y;
- unsigned long z;
- float f,g;
- char d, buf [10];
- int argsread;
- printf ("Enter a signed byte, int, and long\n");
- argsread = scanf ("%bd %d %ld", &a, &b, &c);
- printf ("%d arguments read\n", argsread);
- printf ("Enter an unsigned byte, int, and long\n");
- argsread = scanf ("%bu %u %lu", &x, &y, &z);
- printf ("%d arguments read\n", argsread);
- printf ("Enter a character and a string\n");
- argsread = scanf ("%c %9s", &d, buf);
- printf ("%d arguments read\n", argsread);
- printf ("Enter two floating-point numbers\n");
- argsread = scanf ("%f %f", &f, &g);
- printf ("%d arguments read\n", argsread);
- }
復制代碼 |