Tôi đã thấy liên kết nàyenums liên kết với chuỗi trong C
How to convert enum names to string in c
tôi có một loạt các enums
được xác định theo cách sau đây trong ứng dụng cung cấp tập tin tiêu đề thư viện (mà tôi không thể thay đổi):
Ngoài ra enums thưa thớt.
typedef enum
{
ERROR_NONE=59,
ERROR_A=65,
ERROR_B=67
}
Tôi muốn in các giá trị trong chức năng của tôi ví dụ tôi muốn in ERROR_NONE
thay vì 59
. Có cách nào tốt hơn chỉ sử dụng các cấu trúc switch
case
hoặc if else
để hoàn thành công việc này không? Ví dụ
int Status=0;
/* some processing in library where Status changes to 59 */
printf("Status = %d\n",Status); /* want to print ERROR_NONE instead of 59 */
Tại sao không sử dụng toán tử [stringizing] (http://msdn.microsoft.com/en-us/library/7e3a913x (v = vs.80) .aspx)? Bạn có thể cho chúng tôi thấy một số mã mà bạn đang cố in các giá trị enum này không? –