引用:1 #include
2
3 int main(int argc, char ** argv)
4 {
5 double a = 13443.5;
6 double b = 13443.3;
7
8 char ptr1[10] = {0};
9 char ptr2[10] = {0};
10
11 gcvt(a, 5, ptr1);
12 printf("result is %s\n", ptr1);
13
14 gcvt(b, 5, ptr2);
15 printf("result is %s\n", ptr2);
16
17
18 exit(0);
19 }
以上是一个简单的测试例子,可以看出该函数能够指定转换的位数,并且超出部分可以做四舍五入处理。
但有一点要注意的是,传入的char * ptr参数一定要用自己定义并且分配空间的字符串,不能使用char * ptr,后者虽然编译没有问题,但是在运行时会出现segment fault。
这应该是由于系统不想自己分配空间的缘故吧,因为那样的话,使用者必须牢记要释放这个分配的空间。