как я могу узнать ASCII-код символа в gnuplot - PullRequest
1 голос
/ 23 марта 2019

Кто-нибудь знает, как узнать код ascii символа в gnuplot?

Официальной функции для этого не существует, поэтому, вероятно, это какой-то трюк.

(ОК, я нашел способ, ответь прямо ниже)

1 Ответ

3 голосов
/ 23 марта 2019

Вместо функции 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.

...