gpt4 book ai didi

c - 为什么在编辑器中打开文件时看不到结构插入记录?

转载 作者:太空宇宙 更新时间:2023-11-04 01:48:30 25 4
gpt4 key购买 nike

我对 C 文件中的结构处理有疑问。在这里,我编写了这个程序来将银行客户记录保存到文件中。它工作正常,但是当我试图打开数据文件 [.txt (or).dat] 时,它显示了一些二进制数字。下面是我的程序。

/* Reading bank details and saving it on a file and printing it on 
screen*/
#include <stdio.h>

//Declaring a structure
struct bank_details
{
char customer_name[20];
char cif_no[10];
int ac_no,pincode;
};

main()
{
struct bank_details bank;
FILE *file;
file= fopen("bank_file.dat", "w");
printf("Enter A/no:\n");
scanf("%d",&bank.ac_no);
printf("Enter customer name:\n");
scanf("%s",bank.customer_name);
printf("Enter CIF no:\n");
scanf("%s",bank.cif_no);
printf("Enter your PINCODE:\n");
scanf("%d",&bank.pincode);

fwrite(&bank, sizeof(bank), 1, file);
if (file!=0)
{
printf("Data successfully updated into file\n");
}

fclose(file);
}

最佳答案

这是因为您正在使用 fwrite 写入您提供的数据的二进制流。 See here.您应该改用 fprintf 之类的东西:

fprintf(file, "CustomerName: %s\nCIF Number: %s", bank.customer_name, bank.cif_no);

man fprintf

关于c - 为什么在编辑器中打开文件时看不到结构插入记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48537123/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com