主题:新手的几个问题 求助
本人是个新手,本人刚学几个月c语言,只会库函数,使用borland c++builder遇到了几个问题,希望高手前辈们指点。多谢了,
[1]关于函数fwrite();应该是个标准库函数,我使用中发现有这样现象:
当定义
struct MYWORD
{
long count;
char word[32];
char firstletter;
int length;
};
struct MYWORD myword;
FILE *pfile;
后,用fwrite(myword,sizeof(struct MYWORD),1,pfile);
输出到文件后,用二进制文件编辑器查看发现当count每次增加使16进制数成为0A时;
文件中都会多了0D,变成0D0A(回车换行符),文件长度变了;这会不会导致以后读文件出错?
是否这是编译器选项设置错了?默认成文本文件。能说明这种自动机制是否C++BUILDER独有的吗?
[2] 另外struct MYWORD在输出文件中长度变成44字节,char firstletter占了4个,
这是编译器为加快处理速度,默认分配内存32位导致的结果吧?编译器这种自做主张;
会不会使不同编译器EXE文件输出不同结构的struct MYWORD到文本pfile呢?
这种自动机制是可设定选项吗?
[3]c++中this指针与Dephi中 self有什么区别,谢谢了。
[1]关于函数fwrite();应该是个标准库函数,我使用中发现有这样现象:
当定义
struct MYWORD
{
long count;
char word[32];
char firstletter;
int length;
};
struct MYWORD myword;
FILE *pfile;
后,用fwrite(myword,sizeof(struct MYWORD),1,pfile);
输出到文件后,用二进制文件编辑器查看发现当count每次增加使16进制数成为0A时;
文件中都会多了0D,变成0D0A(回车换行符),文件长度变了;这会不会导致以后读文件出错?
是否这是编译器选项设置错了?默认成文本文件。能说明这种自动机制是否C++BUILDER独有的吗?
[2] 另外struct MYWORD在输出文件中长度变成44字节,char firstletter占了4个,
这是编译器为加快处理速度,默认分配内存32位导致的结果吧?编译器这种自做主张;
会不会使不同编译器EXE文件输出不同结构的struct MYWORD到文本pfile呢?
这种自动机制是可设定选项吗?
[3]c++中this指针与Dephi中 self有什么区别,谢谢了。