Prolog 如何在amzi中将字符串转换为ascii!序言?
因此,我尝试将字符串转换为名称为/2和字符代码/2等的ascii,但我一直得到类似于[0w0061,0w0062,0w0063]的结果 比如说Prolog 如何在amzi中将字符串转换为ascii!序言?,prolog,ascii,amzi-prolog,Prolog,Ascii,Amzi Prolog,因此,我尝试将字符串转换为名称为/2和字符代码/2等的ascii,但我一直得到类似于[0w0061,0w0062,0w0063]的结果 比如说 ?- name(abc,A). A = [0w0061,0w0062,0w0063] 我希望返回的列表是[97,98,99]。 有什么帮助吗?好的,我知道了。 例如,如果我尝试 ?- name(abc,A). 它还说: A = [0w0061,0w0062,0w0063] 我得到一个返回的成员并从中减去0。看起来像这样。 例如: ?- name
?- name(abc,A).
A = [0w0061,0w0062,0w0063]
我希望返回的列表是[97,98,99]。
有什么帮助吗?好的,我知道了。
例如,如果我尝试
?- name(abc,A).
它还说:
A = [0w0061,0w0062,0w0063]
我得到一个返回的成员并从中减去0。看起来像这样。
例如:
?- name(a, A).
A = [0w0061] ,
no
?- A is 0w0061 - 0.
A = 97
好的,我明白了。
例如,如果我尝试
?- name(abc,A).
它还说:
A = [0w0061,0w0062,0w0063]
我得到一个返回的成员并从中减去0。看起来像这样。
例如:
?- name(a, A).
A = [0w0061] ,
no
?- A is 0w0061 - 0.
A = 97
请发布您尝试过的无效代码。@MarkBenningfield您的意思是什么?我确实发布了它,我尝试了name/2规则,它返回了[0w0061,0w0062,0w0063]。name/2是内置的。您没有为name规则提供字符串。使用
?-name('abc',A)。
@MarkBenningfield它做同样的事情。看看这个Amzi!Prolog将字符存储为十六进制值,“w”表示宽字符61
十六进制=97
十进制。请发布您尝试过的无效代码。@MarkBenningfield您的意思是什么?我确实发布了它,我尝试了name/2规则,它返回了[0w0061,0w0062,0w0063]。name/2是内置的。您没有为name规则提供字符串。使用?-name('abc',A)。
@MarkBenningfield它做同样的事情。看看这个Amzi!Prolog将字符存储为十六进制值,“w”表示宽字符<代码>61十六进制=97
十进制。