在以下代码中,write
函数不会打印浮点数:
#include <unistd.h>
int main(){
float f = 4.5;
write(1,&f,sizeof float);
return 0;
}
这将导致:
�@
鉴于:
int main(){
char *c = "Hello world";
write (1,c,strlen(c)+1);
return 0;
}
按预期打印Hello world
。
我错过了什么?
提前致谢。
write
已经有点像 C 函数了(是的,它可能是一个内核调用,但我认为大多数内核都有printf
)。 - kennytm