Developer's Topics
Chapter 7, Common Object File Format (COFF)

String table

String table

Symbol table names longer than eight characters are stored contiguously in the string table with each symbol name delimited by a null byte. The first four bytes of the string table are the size of the string table in bytes; offsets into the string table, therefore, are greater than or equal to 4. For example, given a file containing two symbols (with names longer then eight characters, long_name_1 and another_one) the string table has the format as shown in Table 7-36, ``String table'':



Table 7-36 String table

 ------------------------
| `l'|  `o'|  `n'|  `g' |
|    |     |     |      |
|----|-----|-----|------|
|    |     |     |      |
| `_'|  `n'|  `a'|  `m' |
|    |     |     |      |
|----|-----|-----|------|
|    |     |     |      |
| `e'|  `_'|  `l'|  `\0'|
|----|-----|-----|------|
|    |     |     |      |
| `a'|  `n'|  `o'|  `t' |
|    |     |     |      |
|----|-----|-----|------|
|    |     |     |      |
| `h'|  `e'|  `r'|  `_' |
|----|-----|-----|------|
|    |     |     |      |
| `o'|  `n'|  `e'|  `\0'|
|----|-----|-----|------|

The index of long_name_1 in the string table is 4 and the index of another_one is 16.