本帖最後由 李泳霖 於 2022-6-6 17:32 編輯
http://gundambox.github.io/2015/10/30/C%E8%AA%9E%E8%A8%80-struct%E3%80%81union%E3%80%81enum/
https://tw.etsoutdoors.com/509160-the-role-of-ifdef-and-JIWRZP
設計說明:
1. 修改程式碼片段中的程式語法、邏輯上的錯誤,執行結果如範例圖。
- #include <stdio.h>
- #include <stdlib.h>
- /* 若沒有定義Knum, 則加以定義為1000 */
- #ifndef Knum
- #define Knum 1000
- #endif
- /* 將Knum解除定義, 之後再定義為200 */
- #undef Knum
- #define Knum 200
- int main ()
- {
- /* 印出最後的Knum值 */
- printf("Knum = %d\n", Knum);
-
- /* 下列的變數d和i共用8個Bytes, 不是12個Bytes */
- union dataType {
- double d;
- int i;
- };
- struct dataType dT;
- printf("請輸入d和i的變數值: ");
- scanf("%lf %d", &dT.d, &dT.i);
- /* 印出dT變數中的d和i */
- printf("%f %d ", dT.d, dT.i);
- system("PAUSE");
- return 0;
- }
複製代碼 |