#include <stdio.h>
#include <unistd.h>
#include <sys/socket.h>
#include <linux/if.h>
#include <linux/sockios.h>
2.定义函数
int check_link(const char *ifname)
{
int fd;
struct ifreq ifr;
fd = socket(AF_INET, SOCK_DGRAM, 0);
if (fd < 0) {
perror("socket");
return -1;
}
memset(&ifr, 0, sizeof(ifr));
strncpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name) - 1);
if ((ioctl(fd, SIOCGIFFLAGS, &ifr) == 0) && (ifr.ifr_flags & IFF_RUNNING)) {
printf("%s is up.\n", ifname);
close(fd);
return 1;
}
else {
printf("%s is down.\n", ifname);
close(fd);
return 0;
}
}
3.调用函数
int main(int argc, char *argv[])
{
if (argc < 2) {
fprintf(stderr, "Usage: %s <interface name>\n", argv[0]);
return 1;
}
if (check_link(argv[1]) < 0) {
fprintf(stderr, "Failed to check the link.\n");
return 1;
}
return 0;
}
刚接触C语言,不是很懂
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- 於黾 2023-06-19 15:08关注
socket是跟网络通信相关的类
参数SOCK_DGRAM代表UDP协议
你呀,一句一句的看,哪一句看不懂就查哪一句,都看不懂当然茫然了解决 3无用
悬赏问题
- ¥15 请各位帮我看看是哪里出了问题
- ¥15 vs2019的js智能提示
- ¥15 关于#开发语言#的问题:FDTD建模问题图中代码没有报错,但是模型却变透明了
- ¥15 uniapp的h5项目写一个抽奖动画
- ¥15 hadoop中启动hive报错如下怎么解决
- ¥15 如何优化QWebEngineView 加载url的速度
- ¥15 关于#hadoop#的问题,请各位专家解答!
- ¥15 如何批量抓取网站信息
- ¥15 Spring Boot离线人脸识别
- ¥15 使用Ant Design Pro vue的时候,使用环境变量的时候,构建报错是什么原因