prolog中char*的语法是什么

prolog中char*的语法是什么,prolog,turbo-prolog,Prolog,Turbo Prolog,我想知道prolog中char*的语法,我想将其用于字符列表。我使用list=integer*表示整数列表,但我不知道prolog中字符列表的sysntax。在SWI prolog中,必须使用_string_to _list/2来创建字符串: ?-A=“ABCD”。 A=[65,66,67,68] ?字符串到列表(A,“ABCD”)。A=“ABCD” 我猜您使用的是Turbo Prolog。 在这种情况下,已经有一个用于字符串的预定义域string 下面是一个用法示例: predicates

我想知道prolog中char*的语法,我想将其用于字符列表。我使用list=integer*表示整数列表,但我不知道prolog中字符列表的sysntax。

在SWI prolog中,必须使用_string_to _list/2来创建字符串:

?-A=“ABCD”。
A=[65,66,67,68]

?字符串到列表(A,“ABCD”)。
A=“ABCD”


我猜您使用的是Turbo Prolog。 在这种情况下,已经有一个用于字符串的预定义域string

下面是一个用法示例:

predicates
  test(string, string).

clauses
test(X, Z):- concat("Hello ", X, Z).
样本输出:

Goal: test("World",Z).
Z=Hello World
1 Solution

有关ISO序言,请参阅[此答案][1]。[1] :在Prolog中没有指针或类型化变量,因此Prolog中没有类似“char*”的东西。但是,如果你告诉我们你想在更高的层次上做什么,我们将能够向你展示如何在Prolog中做到这一点。OP使用的是Turbo Prolog。因为他定义了一个特定于Turbo-Prolog的´list=integer*´,所以您可以分辨出来