![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C
ScarletMeCarzy
这个作者很懒,什么都没留下…
展开
-
Linux socket send发不全 本地可以 远程server有概率发不全
可能是网络延时,导致本地发太快,本地buffer满了或者send过去,对方的buffer收满了解决方法:send后 usleep(20000),sle原创 2021-05-28 10:21:45 · 435 阅读 · 0 评论 -
epoll_create 返回 -1 errno function not implemented
本人在移植功能代码epoll时遇到,查阅资料后解决: 查看linux内核 .config,修改kernel源文件中的.config的CONFIG_EPOLL=y原创 2021-05-24 14:59:00 · 648 阅读 · 0 评论 -
函数(function)VS方法(method) 函数和方法的区别
经常谈论起函数和方法,也常常搞不清楚它们之间的界限,经常把两个混用。首先来看看,两者是如何定义的? 函数(function)是可以执行的javascript代码块,由javascript程序定义或javascript实现预定义。函数可以带有实际参数或者形式参数,用于指定这个函数执行计算要使用的一个或多个值,而且还可以返回值,以表示计算的结果。 方法(method)是通过对象调用的javascript函数。也就是说,方法也是函数,只是比较特殊的函数。假设有一个函数是fn,一个对象是obj,那么就可原创 2020-08-17 08:18:37 · 2179 阅读 · 0 评论 -
数组和vector区别
本文基于邓俊辉编著《数据结构(C++语言版)(第3版)》、《C++ Primer(第5版)》以及网上的相关博文而写,博主水平有限,若有不妥处,欢迎指出。一、数组C++中数组是一种内置的数据类型。数组是存放类型相同的对象的容器,数组的大小确定不变,不能随意向数组中增加元素。1、定义和初始化内置数组(1)数组的大小不变,(a[d],d为数组的维度),数组的维度必须是一个常量表达式。定义数组的时,必须指定数组的类型和大小。(2)初始化时,允许不指明数组的维度,不指明维度,则编译器根据.转载 2020-08-11 11:39:02 · 8169 阅读 · 1 评论 -
钩子函数和回调函数
回调函数实际上就是在调用某个函数(通常是API函数)时,将自己的一个函数(这个函数为回调函数)的地址(函数指针)作为参数传递给那个函数。而那个函数在需要的时候,利用传递的地址调用回调函数,这时你可以利用这个机会在回调函数(自己写的这个函数)中处理消息或完成一定的操作。简单的说就是回调函数函数不是系统定义的,而是应用程序自己定义的一个由系统来调用的函数,所以显然,它的参数必须按照约定来,即,参数是预先定义好的。首先你要明白什么是函数指针。通过函数指针,可以得到函数所在的内存位置,从而执行该..原创 2020-06-17 16:24:45 · 1089 阅读 · 0 评论 -
const char * const name
const *说明指向的是常量。* const说明指针是常量。const * const说明指针和指向的都是常量。原创 2020-06-17 11:38:21 · 1105 阅读 · 0 评论 -
变量与“零值”进行比较
PSILON的含义EPSILON指的是浮点数可表示的最小值(the smallest value)(MSDN:the difference between 1 and the smallest value greater than 1 that the data type can represent.)首先给个提示:题目中要求的是零值比较,而非与0进行比较,在C++里“零值”的范围可就大了,可以是0, 0.0 ,FALSE或者“空指针”。①int型变量 n 与“零值”比较的 if 语句就是:原创 2020-05-26 21:45:45 · 316 阅读 · 0 评论 -
指针加减与地址强制转化(附上操作系统位数)
指针加减表示类型元素移动的个数struct Test{ int Num; char *pName; short sDate;}*p;以上定义了一个指针p,指向struct Test类型假设p = 0x1000,有以下结果p + 1 = p值+sizeof(struct Test);(unsigned long)p + 1 =0x01000+1 = 0x1001 //将p强转为unsigned long ,结果为unsigned long 加减(uns...原创 2020-05-26 14:12:04 · 962 阅读 · 0 评论 -
char型转为%x 补0/1问题
可以看到: 把c转换成unsigned char打印是正确的。视作情况A。 把c与 0xff做&操作后打印正确。视作情况B。 对c不做任何处理,则问题复现了,打印出ffffffc9。视作情况C。 情况A B是我百度来的一些解决C现象的方法。那么我们现在来逐一分析解释ABC三种情况。 首先我们必须知道,printf()函数的%x(X)输出的是Int型别的16进制格式。所以char型别的c变量会被转换成Int型别。 其次,我们的知道计算机是用补码表示数据的。关原创 2020-05-26 00:25:21 · 600 阅读 · 0 评论 -
BIG-ENDIAN VS LITTLE-ENDIAN
1.计算机硬件有两种储存数据的方式:大端字节序(big endian)和小端字节序(little endian)。举例来说,数值0x2211使用两个字节储存:高位字节是0x22,低位字节是0x11。大端字节序:高位字节在前,低位字节在后,这是人类读写数值的方法。 小端字节序:低位字节在前,高位字节在后,即以0x1122形式储存。同理,0x1234567的大端字节序和小端字节序的写法如下图。2.我一直不理解,为什么要有字节序,每次读写都要区分,多麻烦!统一使用大端字节序,原创 2020-05-25 23:53:31 · 419 阅读 · 0 评论 -
C语言printf左对齐和右对齐
1.左对齐方式1printf("%d\n",101010);默认打印格式为左对齐;方式2printf("%-10d\n",101010);在打印数字宽度前面加一个“-”。说明:数字宽度为10,如果要打印的位数小于10,则在后面补足空格;如果要打印的位数大于10,则打印所有的数字,不会截断。2.右对齐printf("%10d",101010);在%和d之间加上数字宽度,就可以右对齐。说明:数字宽度为10,如果要打印的位数小于10,左边补足空格;如果要打印的位数.原创 2020-05-25 23:17:59 · 27445 阅读 · 1 评论 -
C fopen vs open
原问题:https://stackoverflow.com/questions/1658476/c-fopen-vs-openIs there any reason (other than syntactic ones) that you'd want to useFILE *fopen(const char *path, const char *mode);instead ofint open(const char *pathname, int flags, mode_t mode);原创 2020-05-22 14:39:28 · 152 阅读 · 0 评论 -
struct VS union
1.结构和联合都是由多个不同的数据类型成员组成的,但是在任一时刻联合只存放一个被选中的成员,而结构的所有成员都存在。2。对于联合的不同成员赋值,将会对其他成员重写,原来成员的值就不存在了,而对结构的不同成员赋值是会不影响的。对联合变量的赋值,都只能对变量的成员进行,一个联合变量每次只能赋值给一个成员,一个联合变量的值就是当前联合变量的某一个成员值。应该说明的是, 这里所谓的共享不是指把多个成员同时装入一个联合变量内, 而是指该联合变量可被赋予任一成员值,但每次只能赋一种值, 赋入新值则冲...原创 2020-05-19 18:38:28 · 132 阅读 · 0 评论 -
#define VS typedef
typedef 与 #define的区别:案例一:通常讲,typedef要比#define要好,特别是在有指针的场合。请看例子:typedef char *pStr1;#define pStr2 char *;pStr1 s1, s2;pStr2 s3, s4;在上述的变量定义中,s1、s2、s3都被定义为char *,而s4则定义成了char,不是我们所预期的指针变量,根本原因就在于#define只是简单的字符串替换而typedef则是为一个类型起新名字。案例二:原创 2020-05-19 17:56:20 · 263 阅读 · 0 评论 -
Brief introduction of malloc
mallocreturns a void pointer to the allocated space, orNULLif there is insufficient memory available. To return a pointer to a type other thanvoid, use a type cast on the return value. The storage space pointed to by the return value is guaranteed to b...原创 2020-05-16 18:02:12 · 94 阅读 · 0 评论