繁体   English   中英

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

[英]Prolog: how to convert string to integer?

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

convert(String,Integer).

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

我正在使用swi prolog

使用 atom_number/2。 例如:

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

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

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

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

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

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

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

文档

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

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

在 Visual Prolog 中转换:

X=toTerm(real,H).

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM