📄 p12-21.c
字号:
#include <unistd.h>#include <sys/socket.h>#include <stdio.h>int discard_until_mark (int socket){ while (1) { char buffer[1024]; int result, success, n = 0; /* 查看到达带外数据标志处否 */ result = sockatmark(socket); if (result < 0){ printf("sockatmark error"); exit(-1); } /* 如果到达带外数据标志,返回 */ if (result) return n; /* 未到达,读入并抛弃标志之前的数据。可以保证读入的数据只是标志之前的数据 */ success = read (socket, buffer, sizeof(buffer)); if (success < 0) perror ("read"); n = n + success; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -