Linux-起步-獲取系統訊息

雖然是起步,但是“Hello Word”我們就不寫了,在Linux下你寫標準的C就能運行了。

我們還是從它開始。

簡單小程式,打印當前登錄名、計算機名、系統時間、IP地址。

 

#include  < stdio.h >
#include 
< time.h >
#include 
< sys / types.h >
#include 
< sys / socket.h >
#include 
< unistd.h >
#include 
< netdb.h >
#include 
< arpa / inet.h >

int  main( void ) {
    printf(
"starting... ");

    
//主機名
    char hostname[32];
    
struct hostent *hptr;
    
char **pptr;
    
char str[32];

    gethostname(hostname, 
sizeof(hostname)); 
    printf(
"%s@%s ", getlogin(), hostname); 

    
char * wday[] = {"Sun""Mon""Tue""Wed""Thu""Fri""Sat"};
    time_t timep;
    
struct tm *p;
    time(
&timep);
    p 
= localtime(&timep);
    printf(
"Time on Remote Machine: %d-%d-%d ", (1900 + p -> tm_year), (1 + p -> tm_mon), p -> tm_mday);
    printf(
"%s %d:%d:%d ", wday[p -> tm_wday], p -> tm_hour, p -> tm_min, p -> tm_sec);

    
if( (hptr = gethostbyname(hostname)) == NULL){
          printf(
"gethostbyname calling error ");
          
return 1;
     }

     pptr 
= hptr -> h_addr_list;
     
for(; *pptr != NULL; pptr++){
          printf(
"IP Address: %s ", inet_ntop(hptr->h_addrtype, *pptr, str, sizeof(str)));
    }


    
return 0;
}

 

運行結果:

starting...
game@apps-dev-linux-4
2007-3-14 Wed 15:37:20
address:192.168.20.225

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值