������ �������� ����(!) ������������� ����������
|
CIT Forum CD-ROM
|
|
LINENUM(4)
��������
linenum - ���������� � ������� ����� ��������� ������ �
�� ������ ����� �������� �������
���������
#include <linenum.h>
��������
���� ������� ����� -g, �� ������� cc(1) ������� � �� ������ ����� �������� � ����������� � ������ ������
������ ��������� ������, �� ������� ����� ���������
����� ����������. ��� ���������� ������������ ��� ������� [��. sdb(1)]. ��������� �������� ��������� ����:
struct lineno {
union {
long l_symndx; /* ���� l_lnno == 0, �� ����� ��������
����. ����, ������������ ������� */
long l_paddr; /* ���������� ����� ������, ���������-
������ ������ */
} l_addr;
unsigned short l_lnno; /* ����� ������ */
};
��������� ����� ���������� ������ ��� ������ �������. �
������� ���������������� ������� �������� ���� l_lnno
����� 0, � � ���� l_symndx ���������� ����� ��������
������� ����, ������������ ��� ���� �������. � ������
��������� ���� l_lnno �� ����� 0, � � l_paddr ���������� ����� ������, ��������������� ������ � �������
l_lnno. ����� �������, ����� ��������� ����� ���������
���:
l_addr | l_lnno |
����� �������� ������� ����,
������������ �������0 | |
����� | ����� ������ |
����� | ����� ������ |
... |
����� �������� ������� ����,
������������ �������0 | |
����� | ����� ������ |
����� | ����� ������ |
... |
��. �����
a.out(4).
cc(1), sdb(1) � ����������� ������������.