马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
2017.0216+API 新加入了 xdrx_printf 函数,是把C语言里面的printf函数给转接到ARX里面供LISP函数使用。 C语言的printf 非常的灵活和方便,看看介绍:
一、 Printf 输出格式 C中格式字符串的一般形式为: %[标志][输出最小宽度][.精度][长度]类型,其中方括号[]中的项为可选项。各项的意义介绍如下:
1.类型类型字符用以表示输出数据的类型,其格式符和意义下表所示:
表示输出类型的格式字符 格式字符意义
a 浮点数、十六进制数字和p-计数法(C99)
A 浮点数、十六进制数字和p-计数法(C99)
c 输出单个字符
d 以十进制形式输出带符号整数(正数不输出符号)
e 以指数形式输出单、双精度实数
E 以指数形式输出单、双精度实数
f 以小数形式输出单、双精度实数
g 以%f%e中较短的输出宽度输出单、双精度实数,%e格式在指数小于-4或者大 于等于精度时使用
G 以%f%e中较短的输出宽度输出单、双精度实数,%e格式在指数小于-4或者大于等于精度时使用
i 有符号十进制整数(与%d相同)
o 以八进制形式输出无符号整数(不输出前缀O)
p 指针
s 输出字符串
x 以十六进制形式输出无符号整数(不输出前缀OX)
X 以十六进制形式输出无符号整数(不输出前缀OX)
u 以十进制形式输出无符号整数
xdrx_printf 实现了里面的 d , f , g,x,o,e,s,其他的由于不符合LISP的数据类型所以没加入 看看用法:
1、整数和实数打印,支持printf的精度,整数前补位.... (xdrx_printf "\n选择到了%d个实体,其中多段线%d条,面积总和为:%.1f" num area)
命令: (setq num 3 area 3.435444)
3.43444
命令: (xdrx_printf "\n选择到了%d个实体,其中多段线%d条,面积总和为:%.1f" num num area)
选择到了3个实体,其中多段线3条,面积总和为:3.4
命令: (xdrx_printf "\n选择到了%d个实体,其中多段线%d条,面积总和为:%.2f" num num area)
选择到了3个实体,其中多段线3条,面积总和为:3.45
2、转8进制
命令: (xdrx_printf "%o" 100)
144
3、转16进制
命令: (xdrx_printf "%x" 100)
64
4、多余位去掉
命令: (xdrx_printf "%g" 2.340000)
2.34
5、科学计数法表示
命令: (xdrx_printf "%e" 234.455533)
2.344555e+002
6、整数带长度(前面补空格)
命令: (xdrx_printf "\n总共图元数:%10d" 40)
总共图元数: 40
7、实数带长度和小数位数(前面补空格)
命令: (xdrx_printf "\n总共图元数:%10.3f" 40)
总共图元数: 40.000
.........................................更多用法看C语音printf语法
xdrx_printf 是打印屏幕, 对应的字符串函数是 xdrx_string_format (返回字符串)
命令: (setq a (xdrx_string_format "\n选择到了%d个实体,其中多段线%d条,面积总和为:%.2f" num num area))
"\n选择到了3个实体,其中多段线3条,面积总和为:3.44"
命令: !a
"\n选择到了3个实体,其中多段线3条,面积总和为:3.44"
|