2012-03-14 99 views
0

我想编写一个名为print array的方法,该方法有两个参数,如下所示。将数组中的字符打印到C中的输出文件中

我想,最有可能使用一个for循环中,通过字符数组迭代,并通过每个字符到输出文本文件上在同一行上的是要打印的文件。所以如果数组有a,b,c,d,e,f,g。在文件中,我希望它显示abcdefg。我真的不知道如何开始。

void printArray(char * array, FILE * fout) 
{ 
    //i think using a for loop is the way to go, i just dont know exactly what to do after 
} 
+1

请得到[K&R]复印件(http://en.wikipedia.org/wiki/The_C_Programming_Language )如果你是认真对待你的*基本c *类 – Chani 2012-03-14 08:48:33

回答

1

试试这个:

void printArray(char * array, FILE * fout, int MAX_CHAR) 
{ 
    int i; 
    fout = fopen("file.txt","a+");  /* open the file in append mode */ 
    for (i=0; i<MAX_CHAR; i++) 
      fprintf(file,"%c",*(array+i)); /* write */ 
    fclose(file);      /* close the file pointer */ 

    return 0; 
} 
2

它被称为fputs()。 POSIX标准,因为这个问题已经被多个人解决了,他们还需要将字符数组(或“放入一个字符串”)打印到FILE中。

您可以只使用代码,是从友好的当地标准C库,或者你可以读取它找出你需要做这样做你自己,你应该觉得有必要。

编辑:尝试以下操作,让你开始 https://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=7425&lngWId=3

+0

我不知道这东西是什么意思。即时通讯在一个基本的C类,该链接中的术语不看我熟悉。 – anthony 2012-03-14 06:52:54

+0

@anthony这就是为什么我编辑它;找到一个更简单的例子;检查一个更简单的新链接 – tbert 2012-03-14 07:58:33