関数名...
Move to
Next Prev
Up Top
See also
一覧表
C関数とIF/Prologを接続する関数
エラーチェックのための関数
単一化関数
変数の扱い
アトムの扱い
整数の扱い
倍精度実数の扱い
リストの扱い
複合項の扱い
複合項の作成
IF Computer > IF/Prolog > Manuals > IF/Prolog V4.1 マニュアル > IF/Prolog Interfaces > IF/PrologからC言語へのインタフェ−ス > 開発にさらに便利なIF/Prologライブラリ関数 > ライブラリ関数の概要 > アトムの扱い

アトムの扱い

MINERVA superseeded IF/Prolog. Please see http://www.ifcomputer.co.jp/MINERVA for details.

We discontinued to sell IF/Prolog Dec 31. 2003. For current customers, we continue to provide professional support for IF/Prolog until Dec 31, 2008.

関数名 IsAt IsString StrAt AtStr 概要 #include "cpred.h"

int IsAt(T) TERM T;

int IsString(T,STRING_POINTER) TERM T; char **STRING_POINTER;

TERM StrAt(STRING) char *STRING;

char *AtStr(T) TERM T;

IsAtは、その引数がアトムの場合には1を返し、それ以外の場合には0を返します。

IsStringは、TERM Tがアトムか整数、または実数の場合には1を返し、その他の場合には0を返します。また示された文字列Tに第2引数としてポインタを返します。変換例をいくつか示します。

Prolog-term C-string abc abc 123 '123' 1.5 '1.5'

StrAtは、Cの文字列をPrologにおけるアトムの表現形式に変換します。この関数は、UnifyArgと共にPrologに結果を返すためによく使われます。たとえば UnifyArg(2, StrAt(mystring))のようになります。

AtStrは、Prologにおけるアトムの表現形式をCの文字列に変換します。この関数は、引数がアトムの場合には、Cの文字列にアトムと同じ名前でポインタを返します。引数がアトムでない場合には、0を返します。

警告! あとでPrologで必要になるので、AtStrによって返された文字列を書き換えないように注意しなければなりません。これを防ぐには、strcpyによってコピ−を作って使うか、Prologに戻る前に変更したところを取り消すようにします。

read on...
IF/Prolog by Siemens
Language
English
Japanese
German
Server
USA
Japan
Site Access
Local Index
Local Contents
Site Contents
Site Index
Printer Friendly
For imode
For PDA
Search
document: http://www.ifcomputer.co.jp/IFProlog/Manuals/v4.1/advanced_feature/c_interface/libfunc/summ/maniatom/home_en.html
published 2008/7/21 update 1995/11/6 (c) 1996-2006 IF Computer Japan
IF Computer 5-28-2 Sendagi, Bunkyo-ku Tel +81-3-5814-3352 info@ifcomputer.com
Customer Support Tokyo 113-0022 Japan   http://www.ifcomputer.com
scroll to top managed with ubiCMS