こんにちは。C言語を学んでいます。僕は最近、linuxのuptimeコマンドをC言語で作ってみたいと思って、ソースを書いてみたんですが、うまく動作しません。ソースは以下です。
#include<errno.h>
#include<stdio.h>
#include<sys/sysinfo.h>
#include<linux/unistd.h>
#include<linux/kernel.h>
long get_uptime()
{
struct sysinfo s_info;
int error=sysinfo(&s_info);
if(error!=0)
{
printf("code error=%d\n",error);
}
return s_info.uptime;
}
int main(int argc,char *argv[])
{
double time;
time=get_uptime();
printf("%8.0f\n",time); return 0;
}
このソースコードをコンパイルして実行すると、実際は1時間20分くらいたっているのに、4937とか表示されます。しばらく経ってからもう一回実行すると5174とかになっています。どうしたら正しく時刻が表示されるでしょうか?

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/09/08 10:39