C语言中putw定义和执行时的毛病

来源:百度知道 编辑:UC知道 时间:2024/05/31 17:40:53
在C语言书上看到这个putw函数的定义,为什么在运行时不行呢
putw(int i,FILE *fp)
{char *s;
s=&i;
putc(s[0],fp);putc(s[1],fp);
return(i);
}

s是指向字符变量的指针变量,i是整型数,因此i的地址值超过8个位
s[0]就=i的地址高八位数值。
s[1]就=i的地址低八位数值。
#include <stdio.h>
main()
{
FILE *fp=fopen("task.txt","rt+") ;
putw(55,fp) ;
getch();
}
可以运行 ,你是不是调用方法不对