【发布时间】:2014-03-13 13:32:46
【问题描述】:
我想知道将错误代码映射到字符串的最佳方法是什么,例如在 SCSI 协议中,错误总是以数字形式返回。像这样:
00h GOOD
02h CHECK CONDITION
04h CONDITION MET
08h BUSY
18h RESERVATION CONFLICT
28h TASK SET FULL
30h ACA ACTIVE
40h TASK ABORTED
我想知道将这些代码即时翻译成字符串对应的最佳方法是什么?我想过做一个数组或其他东西,但 Ig 必须制作一个长度为 40h 的数组,即使我不会使用大多数索引。那么创建一个以数字作为输入并返回字符串的函数的最佳方法是什么?
【问题讨论】:
-
很难说这是否是“最好”的方式,但在我看来这是一种不错的方式。
-
我怀疑这些不是实际的错误代码,而是位字段定义(或在几种情况下的位组合) - 您有时可能会得到一个与这些数字中的任何一个都不完全匹配的状态代码,因为这是它们的组合......
-
我不这么认为。似乎其他错误代码要么是保留的,要么是特定于供应商的。没有提及您在 scsi 协议中的想法。至少我没见过。