1
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
int main()
{
pid_t mypid = getpid();
write(1, &mypid, sizeof(pid_t));
return 0;
}
打印乱码而不是实际PID。为什么?
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
int main()
{
pid_t mypid = getpid();
write(1, &mypid, sizeof(pid_t));
return 0;
}
打印乱码而不是实际PID。为什么?
顺便说一句,'fprintf'只有在'pid_t'实际上是'signed int'的时候才有效。可能更安全地施放它。 –
因为你不发送文本'stdout'。 'write'是一个二进制输出函数。试试'printf()'。 –