課程
/后端開發
/C
/C語言入門
感覺兩者并沒有區別啊 ? printf(“%d”,a)打出來不都一樣嗎
2016-09-10
源自:C語言入門 2-7
正在回答
#define a 10是宏定義,其格式為#define 標識符 字符串
宏定義就是把一段長代碼(字符串)define定義成一個短的關鍵詞,以后下面程序要多次用到那段長代碼的時候,直接用關鍵詞代替,減少代碼量,還有在出錯維護的時候也只要把define后的字符串修改,全文的關鍵詞也就變了,方便維護
int a = 10;僅僅是定義一個int類型的變量并賦值為10,在內存中開拓了一塊區域
宏定義寫在函數的花括號外邊,作用域為其后的程序,通常在文件的最開頭,你說print出來沒有什么區別是對的,但一般在項目中不這樣用,凡事都有規則嘛!
他們之間的區別是:
宏定義不分配內存,變量定義分配內存。
宏定義是C提供的一種預處理機制,預處理是在編譯之前的處理(你后面會接觸到)
kiwilee0406 提問者
舉報
C語言入門視頻教程,帶你進入編程世界的必修課-C語言
1 回答int a=10 printf("a");輸出結果為a=10 ,int a=10 printf("%d=a",a);輸出結果也是a=10所以格式化語句有啥用
2 回答a=10; a++后,a=?;a=10,++a后,a+?
2 回答a++和a+,+a、++a的區別是什么??
2 回答#include <stdio.h> int main() { int a[10] = {0}; for (int i = 0; i < 10 , i++) { a[i] = arc4random()%50; printf ("%d",a[i]); } for (int i = 0; i < 10-1 ;i++ ) { for(int j = 0;j< 10-1-i ;j++) {
2 回答這里#define 和int的區別?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-09-10
#define a 10是宏定義,其格式為#define 標識符 字符串
宏定義就是把一段長代碼(字符串)define定義成一個短的關鍵詞,以后下面程序要多次用到那段長代碼的時候,直接用關鍵詞代替,減少代碼量,還有在出錯維護的時候也只要把define后的字符串修改,全文的關鍵詞也就變了,方便維護
int a = 10;僅僅是定義一個int類型的變量并賦值為10,在內存中開拓了一塊區域
宏定義寫在函數的花括號外邊,作用域為其后的程序,通常在文件的最開頭,你說print出來沒有什么區別是對的,但一般在項目中不這樣用,凡事都有規則嘛!
他們之間的區別是:
宏定義不分配內存,變量定義分配內存。
宏定義是C提供的一種預處理機制,預處理是在編譯之前的處理(你后面會接觸到)
2016-09-10
#define a 10是一個常量,無法改變
int a=10 是一個變量,可以改變