Системное программирование в UNIX средствами Free Pascal


. Идентификатор процесса - часть 2


  gentemp:=namebuf;

end;

Процедура itoa просто преобразует целое число в эквивалентную строку:

 (* Функция itoa - преобразует целое число в строку *)

function itoa(i:integer;str:pchar):integer;

var

  power, j : integer;

begin

  j := i;

  power := 1;

  while j >= 10 do

  begin

    power := power * 10;

    j := j div 10;

  end;

  while power > 0 do

  begin

    str^ := char(byte('0') + i div power);

    inc(str);

    i := i mod power;

    power := power div 10;

  end;

  str^ := #0;

end;

Обратите внимание на способ преобразования цифры в ее символьный эквивалент в первом операторе во втором цикле for – он опирается на знание таблицы символов ASCII. Следует также отметить, что большую часть работы можно было бы выполнить гораздо проще при помощи процедуры sprintf. Описание процедуры sprintf смотрите в главе 11.

Упражнение 5.11. Переделайте процедуру gentemp так, чтобы она принимала в качестве аргумента префикс имени временного файла.




- Начало -  - Назад -  - Вперед -



Книжный магазин