Tôi biết rằng #definecác s, v.v. thường không bao giờ được thụt vào. Tại sao?
Tôi đang làm việc trong một số mã tại thời điểm này có một hỗn hợp khủng khiếp của #defines, #ifdefs, #elses, #endifs, v.v. Tất cả những thứ này thường được trộn lẫn với mã C bình thường. Việc không thụt lề của chữ #defines khiến chúng khó đọc. Và hỗn hợp của mã được thụt vào với các mã không được thụt #definevào là một cơn ác mộng.
Lợi ích của việc không thụt lề #defines là gì? Nó có khiến tôi trở thành một người xấu nếu tôi thụt vào trong chúng không? Điều này không đẹp hơn nhiều sao?
#ifdef SDCC
#if DEBUGGING == 1
#if defined (pic18f2480)
#define FLASH_MEMORY_END 0x3DC0
#elif defined (pic18f2580)
#define FLASH_MEMORY_END 0x7DC0
#else
#error "Can't set up flash memory end!"
#endif
#else
#if defined (pic18f2480)
#define FLASH_MEMORY_END 0x4000
#elif defined (pic18f2580)
#define FLASH_MEMORY_END 0x8000
#else
#error "Can't set up flash memory end!"
#endif
#endif
#else
#if DEBUGGING == 1
#define FLASH_MEMORY_END 0x7DC0
#else
#define FLASH_MEMORY_END 0x8000
#endif
#endif