雖然是起步,但是“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
>
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/a41954a27d6ad96fa2c2cf816e677448.gif)
int
main(
void
)
...
{
printf("starting... ");
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
//主機名
char hostname[32];
struct hostent *hptr;
char **pptr;
char str[32];
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
gethostname(hostname, sizeof(hostname));
printf("%s@%s ", getlogin(), hostname);
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
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);
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
if( (hptr = gethostbyname(hostname)) == NULL)...{
printf("gethostbyname calling error ");
return 1;
}
pptr = hptr -> h_addr_list;
![](https://i-blog.csdnimg.cn/blog_migrate/37c8bf68cdc3cc81759c34160776bc53.gif)
for(; *pptr != NULL; pptr++)...{
printf("IP Address: %s ", inet_ntop(hptr->h_addrtype, *pptr, str, sizeof(str)));
}
![](https://i-blog.csdnimg.cn/blog_migrate/6a9c071a08f1dae2d3e1c512000eef41.gif)
return 0;
}
運行結果:
starting...
game@apps-dev-linux-4
2007-3-14 Wed 15:37:20
address:192.168.20.225