001、
[root@PC1 test]# ls test.c [root@PC1 test]# cat test.c // 測試程式 #include <stdio.h> int main(void) { int i = 10; printf("i1 = %d\n", i); printf("i2 = %f\n", i); return 0; } [root@PC1 test]# gcc test.c -o kkk // 編譯 [root@PC1 test]# ls kkk test.c [root@PC1 test]# ./kkk // %f不能轉換int型資料 i1 = 10 i2 = 0.000000
002、
[root@PC1 test]# ls test.c [root@PC1 test]# cat test.c // 測試程式 #include <stdio.h> int main(void) { int i = 8.888; // 把int型給予浮點型資料 printf("i1 = %d\n", i); // %d轉換 printf("i2 = %f\n", i); // %f轉換 return 0; } [root@PC1 test]# gcc test.c -o kkk // 編譯 [root@PC1 test]# ls kkk test.c [root@PC1 test]# ./kkk ## int型無法用%f轉換 i1 = 8 i2 = 0.000000
。
003、
[root@PC1 test]# ls test.c [root@PC1 test]# cat test.c // 測試程式 #include <stdio.h> int main(void) { double i = 9.888; printf("i1 = %f\n", i); printf("i2 = %d\n", i); // 用%d轉換double型 return 0; } [root@PC1 test]# gcc test.c -o kkk [root@PC1 test]# ls kkk test.c [root@PC1 test]# ./kkk ## 無法正常轉換 i1 = 9.888000 i2 = 2147483634
。
004、
[root@PC1 test]# ls test.c [root@PC1 test]# cat test.c // 測試程式 #include <stdio.h> int main(void) { double i = 10; printf("i1 = %f\n", i); printf("i2 = %d\n", i); return 0; } [root@PC1 test]# gcc test.c -o kkk [root@PC1 test]# ls kkk test.c [root@PC1 test]# ./kkk ## %d無法轉換double型資料 i1 = 10.000000 i2 = 2147483633
。