Prin1

提供:GizmoLabs - だいたい CAD LISP なサイト
2009年11月3日 (火) 13:11時点におけるGizmon (トーク | 投稿記録)による版 (ページの作成: ; 構文 : (prin1 [''expr'' [''file-desc'']]) ; 機能 : コマンド ラインに式を表示したり、開いているファイルに式を書き出す。 ; 引数 :* expr :…)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
構文
(prin1 [expr [file-desc]])
機能
コマンド ラインに式を表示したり、開いているファイルに式を書き出す。
引数
  • expr : 文字列または LISP 式。 改行、指定した expr 引数、スペースの順に出力される。
  • file-desc : 書き出しモードまたは追加モードで開かれたファイル ディスクリプタ。
戻り値;
評価した expr 引数の値。 評価した prin1 引数の値。
引数を指定しないで呼び出すと、空のシンボルが返される。
関数の最後の式として、引数を指定しないで prin1 関数を使用すると、関数が終了したときに空白行が出力され、戻り値の表示を抑止することができる。


サンプル
(setq a 123 b '(a))
(A)
(prin1 'a)
AA ← 最初の A はコマンドが出力した A で、後の A は戻り値の A 。
(prin1 a)
123123 ← 最初の 123 はコマンドが出力した 123 で、後の 123 は戻り値の 123。
(prin1 b)
(A)(A) ← 最初の(A)はコマンドが出力した(A)で、後の(A)は戻り値の(A)。
file‑desc 引数を指定していないので、上の例はそれぞれ画面に表示される。f が、書き出しモードまたは追加モードで開かれたファイルの有効なファイル ディスクリプタである場合、次のように関数を呼び出すと、文字列がファイルに書き出され、関数からその文字列が返される。
(prin1 "Hello" f)
"Hello"
---
expr 引数に制御文字が含まれる場合、prin1 関数は次の表に示すように、それらの文字の前に円記号(¥)を付けて拡張する。
制御文字
コード 説 明
¥¥ ¥ 文字
¥" " 文字
¥e エスケープ文字
¥n 改行文字
¥r 復帰文字
¥t タブ文字
¥nnn 8 進コードが nnn の文字

次の例は、制御文字の使用例。

(prin1 (chr 2))
"¥002""¥002"
(prin1 "\U+0100")
"Ā""Ā"
  • IJCADはユニコード未対応。(IJCAD7 現在)

関連事項