» 您尚未登录:请 登录 | 注册 | 标签 | 帮助 | 小黑屋 |


发新话题
打印

[其他] 请教一个编程问题。。。。。如何实现由用户控制的文件输出格式???

posted by wap, platform: Android
引用:
原帖由 @ff_cactus  于 2016-2-3 00:54 发表
不是呀,假如用户输入的是:

My table

%d,    %f

%d,    %f


笨一点:
array_type array;
array_type *p = array;
char* format = read_file_content();
fprintf(output_f, format, p++, p++, p++, p++ .....);
当然这样做的话每次增加输出量就需要改。我想应该可以用那个什么arg_list宏之类的来替代后面的 p++ 等等。

不过你也可以写成循环。
你每次从用户文件那里读数据,直到读到一个%d或%f,然后调用printf,这样printf里面就一个打印参数了。要注意的是:1. 处理最后一个%d %f后面的内容。2. 文件要用append方式打开,或者你先写到缓存里。
感觉用C++写方便点。C的话申请内存比较麻烦。
不需要改p++,每次只需要打印一个数就行,不加\n就不会换行,循环到把一行打印完,再单独打印一个\n

期间文件不用关闭,所以打开一次就可以,不用append

貌似这个需求根本不需要申请内存。如果只是配置文件里面的参数读入,直接声明一个小的静态字符串变量就可以。

本帖最后由 性博士 于 2016-2-3 02:44 通过手机版编辑


本帖最近评分记录
  • waterking 激骚 +3 恭喜发财 2016-2-4 00:17

TOP

发新话题
     
官方公众号及微博