Prolog:如何将字符串转换为整数?

时间:2011-07-21 20:01:16

标签: string integer prolog

正如标题所说 - 如何将字符串转换为整数? 这个想法是这样的:

convert(String,Integer).

examples:
convert('1',1).
convert('33',33).

我正在使用swi prolog

5 个答案:

答案 0 :(得分:12)

使用atom_number / 2。 例如:

  atom_number('123', X).
  X = 123.

答案 1 :(得分:9)

假设你真的是指一个字符串而不是一个原子,请使用number_codes

?- number_codes(11, "11").
true.

?- number_codes(11, Str).
Str = [49, 49].            % ASCII/UTF-8

?- number_codes(N, "11").
N = 11.

答案 2 :(得分:4)

也许使用atom_codes(?Atom, ?String)number_chars(?Number, ?CharList)即可。

答案 3 :(得分:0)

Visual Prolog转换中的

X=toTerm(real,H).

真实/整数/无符号...

答案 4 :(得分:0)

相当古老,但SWI Prolog中有一个谓词:number_string(N, S).

Docs

number_string(123, S).
S = "123".

对于那些仍在寻找它的人。

相关问题