Вместо функции ord(ch)
можно построить строку со всеми символами и найти положение рассматриваемой строки с помощью функции strstrt()
.
# make a string that contains all ASCII chars from 1 to 255
ALLCHARS = ''; do for [i=1:255] {ALLCHARS = ALLCHARS.sprintf('%c',i)}
# return position of character in ALLCHARS if ch contains 1 char, -1 otherwise
ord(ch) = (strlen(ch) == 1) ? strstrt(ALLCHARS,ch): -1
# test with ASCII char 12
pr n=12, testch = sprintf('%c',n), ord(testch)
NUL (ASCII-code zero) отсутствует, потому что gnuplot в любом случае не имеет одно-символьной переменной типа, которая могла бы его содержать.Строки gnuplot заканчиваются NUL.