Ада-95. Компилятор GNAT

       

Строки языка C


Описание массива символов языка C имеет следующий вид:

type Char_Array is array (Size_T range <>) of aliased Char;

Для представления строк, в языке C используются массивы символов заканчивающиеся нулевым символом.

Нулевой символ используется как индикатор конца строки.

Таким образом, описание строки Name, содержащей текст "Vasya", которая может быть передана как параметр для функции языка C

может иметь следующий вид:

Name : constant Char_Array := "Vasya" & nul;

Примечательно, что nul используется для представления нулевого символа (индикатор конца строки) и не является зарезервированным словом Ады null.

Для выполнения символьной конверсии можно использовать функции:

function To_C (Item: in Character) return Char; function To_Ada (Item: in Char) return Character;

Для выполнения строковой конверсии можно использовать функции:

function To_C (Item : in String; Append_Nul : in Boolean := True) return Char_Array; function To_Ada (Item : in Char_Array; Trim_Nul : in Boolean := True) return String;

Не сложно догадаться, что функции с именами To_C должны использоваться для преобразования переменных в форму совместимую с языком C, а функии с именами To_Ada

- обратно.



Содержание раздела