我试图为一个文件写一个标题,但这将由另一个寻找80个字节的程序读取。如何编写一个80字节大小的字符串,其中可能包含少量字符,例如" box"?
我尝试过的事情:
const char* title;
GetAttribute(model,"title of attar",&title); //args 2 & 3 must be char *, char **
char newtitle[80];
strcopy(newtitle,title);
fwrite(newtitle,sizeof(char),80,fp);
我也尝试过写标题......
fwrite(newtitle,sizeof(char),strlen(title),fp);
并在剩余字节后用空格填充空格,但这些空格会在程序中稍后导致问题 感谢您的建议
答案 0 :(得分:0)
你可能想要用0字节填充它。在将字符串复制到其中之前,用零填充新标题缓冲区,然后将该缓冲区写入文件:
char newtitle[80];
memset(newtitle, '\0', 80);
strncpy(newtitle, title, 80);
fwrite(newtitle, sizeof(char), 80, fp);
你可以将你想要的任何ASCII字符传递给memset(),用它来填充它。但是对于二进制文件,您通常会使用'\0'
。