又来问个新手问题,关于写档?
要怎么才能在一次fopen()输出同一个CSV档案时,一列一列写入档案(直列)?因为源资料排列格式如此,但是一直以来写档都是一行一行写的.
一直被内存覆盖问题困扰,所以干脆牺牲一点效能,
一次全出改成批次输出内存资料到档案中(若能一列一列写档).
附件参考如下:
https://bbs.bccn.net/thread-441645-1-1.html
#include <stdio.h> #define N 3 char a[N] = {'a', 'b', 'c'}; char b[N] = {'1', '2', '3'}; char c[N] = {'x', 'y', 'z'}; void write(char *pa, char *pb, char *pc, FILE *fp) { int i = 0; while(i < N) { fprintf(fp, "%c\t%c\t%c\n", pa[i], pb[i], pc[i]); i++; } } int main(void) { FILE *fp = fopen("new.txt", "w+"); write(a, b, c, fp); fclose(fp); return 0; }