随笔分类 - C语言学习
摘要:一个简单的宏 #define LOG_INFORMATION(x, ...) LOG_ME("%s:%d, "x, __FUNCTION__,__LINE__, ##__VA_ARGS__) 一直都可以正常编译,但是当启用C++11的时候,报告编译错误 C++ 11 Complier ErrorSh
阅读全文
摘要:有两个程序A,B A绑定端口8000,然后用system函数启动程序B,然后再把A杀掉,这个时候再重启A的时候会发现绑定端口失败, 原因是端口被B绑定了,实际上是被继承了,为了避免这种情况,需要对主socket设置如下 fcntl(mainSocket, F_SETFD, FD_CLOEXEC);
阅读全文
摘要:strcasecmp 忽略大小写字符串比较函数 #include <strings.h> int strcasecmp(const char *s1, const char *s2); 参数为两个需要比较的字符串 返回值 0: 相同 非0: 返回第一个不同的字符相差的数量。 实例 #include
阅读全文
摘要:#是在宏定义中将参数进行字符串化的预处理特征,例如: #include <stdio.h> #define P(EXP) printf("%s %d\n", #EXP, EXP) int main() { int a=123; P(a); return 0; } 预编译展开后的部分代码 #defin
阅读全文
摘要:可以使用宏定义方式对结构体成员进行赋值。 #include <stdio.h> #include <string.h> #include <stdlib.h> typedef struct{ struct { int n1; int n2; } data; int n3; }n_t; #define
阅读全文
摘要:函数定义 #include <sys/types.h> #include <sys/socket.h> #include <ifaddrs.h> int getifaddrs(struct ifaddrs **ifap); 参数说明 struct ifaddrs { struct ifaddrs *
阅读全文
摘要:函数定义 const char * inet_ntop(int af, const void * restrict src, char * restrict dst, socklen_t size); int inet_pton(int af, const char * restrict src,
阅读全文
浙公网安备 33010602011771号