首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

怎么将数组的内容写入文件

2013-08-01 
如何将数组的内容写入文件#include stdio.h#include stdlib.h#define a 10int main(){int A[a]{0,1,2

如何将数组的内容写入文件

#include <stdio.h>
#include <stdlib.h>
#define a 10
int main()
{


    int A[a]={0,1,2,3,4,5,6,7,8,9};
    FILE *p;
    char strin[25];
    p=fopen("hello.txt","w");
    int i;
    for(i=0;i<10;i++)
    {
        itoa(A[i],strin,10);
        printf("%s",strin);
         fwrite(A+i,strlen(strin),1,p);
    }

    return 0;

}

请问我这个打开文件模式对不对,还有我写入文件的内容乱码了
[解决办法]

#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#define a 10
int main()
{
 
 
    int A[a]={0,1,2,3,4,5,6,7,8,9};
    FILE *p;
    char strin[25];
    p=fopen("hello.txt","w");
    int i;
    for(i=0;i<10;i++)
    {
        printf("%d",A[i]);
        fprintf(p,"%d",*(A + i));
    }
    fclose(p);
    return 0;
 
}

[解决办法]
你写入的是2进制数据
把整形数据转换为字符串再写入

fwrite(A+i,strlen(strin),1,p);
//改为:
fwrite(strin,strlen(strin),1,p);

热点排行