草庐IT

zval_struct

全部标签

c - 如何查找 C 结构 (struct sockaddr_in) 的手册页?

我很难找到套接字中使用的结构的手册页。所以我目前正在从一个单独的在线教程中了解它们。但如果知道如何在手册页本身中查找这些结构,那就太好了。我使用的是Debian8.3Linux系统。例如,我在mangetaddrinfo中找到了关于structaddrinfo的信息。但我无法在任何手册页中找到有关structsockaddr_in的信息。哪个手册页包含有关此结构的详细信息?以及一般如何找到此类结构的手册页? 最佳答案 您可以通过键入man7ip然后手动搜索它或按/并键入sockaddr_in来找到该特定结构。如果您不知道要查看哪个部

c - 使用 struct epoll_event 处理内存

我正在使用epolllibrary用C语言开发服务器我有一个关于如何为structepoll_event处理内存的问题。我在一些在线示例中注意到,当进行epoll_ctl调用时,events参数在堆栈上分配,然后传递指针,如下所示:structepoll_eventev;ev.events=EPOLLIN;epoll_ctl(epfd,EPOLL_CTL_ADD,sockfd,&ev);现在我们都知道函数返回时ev会发生什么。我的问题是:epoll库是在内部复制这些值还是依赖于您传递给堆分配的结构?上面的例子会完全破坏我的react器实现吗?如果是这样,跟踪我的堆分配epoll_eve

c - Linux C : Easy & 'pretty' dump/printout of structs (like in gdb) - from source code?

我正在构建的内核模块中的一些结构存在一个小问题,所以我认为如果有一种简单的方法来打印结构及其值会很好——下面是一个小的用户态示例我的意思。假设我们有如下简单的C示例(以bash命令的形式给出):FN=mtestcat>$FN.c//printf#include//callocstructperson{intage;intheight;};staticstructperson*johndoe;main(){johndoe=(structperson*)calloc(1,sizeof(structperson));johndoe->age=6;asm("int3");//breakpoin

c - time_t 的最大值(struct timespec)

我正在使用structtimespec结构,这里是:structtimespec{time_ttv_sec;/*Seconds*/longtv_nsec;/*Nanoseconds*/};事情是,用户将输入每个成员的值,我想检查最大值。用户可以输入的值。我可以取最大值吗?time_t的值作为整数最大值?即INT_MAX用于tv_sec和LONG_MAX(在limits.h中定义)用于tv_nsec?两者的最小可接受值是多少?是零吗?我猜不能接受负值?补充一下,这些值将在计时器中使用。P.S:time_t的typedef在哪里?未能及时找到。h。 最佳答案

linux - struct hostent 是否有字段 "h_addr"?

我遇到了下面的代码截图:structhostent*hp;hp=my_gethostbyname(localhost);if(hp==NULL){ls_syslog(LOG_ERR,I18N_FUNC_FAIL,fname,"my_gethostbyname()");return-1;}strcpy(localhost,hp->h_name);memcpy(&addr,hp->h_addr,hp->h_length);我对最后一句比较迷惑,structhostent的声明是这样的:structhostent{char*h_name;/*officialnameofhost*/char*

C : how can I change from file descriptor to FILE struct and vice versa?

有什么方法可以将int文件描述符更改为FILE结构指针或/和将FILE*更改为文件描述符C? 最佳答案 函数fdopen()返回一个与打开的文件描述符关联的新(FILE*)。函数fileno()返回与打开的FILE*关联的文件描述符。 关于C:howcanIchangefromfiledescriptortoFILEstructandviceversa?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com

Linux系统struct input_event结构体分类型(鼠标、键盘、触屏)详解与例子

目录一、概述二、结构体字段解析三、不同类型地解释字段 3.1鼠标事件 3.2键盘事件 3.3触摸屏事件四、使用structinput_event读取设备文件的例子一、概述Linux系统是通过输入子系统来管理输入设备(如鼠标、键盘、触摸屏、游戏摇杆)的。配置了内核支持且安装对应驱动后,当系统接入输入设备,会在/dev/input下生成对应设备文件,下图是鼠标、键盘在不同情况下/dev/input的设备文件。当输入设备有事件产生时,内核就会将事件上报到设备文件,事件的数据以structinput_event为单位存入设备文件,所以读取事件数据时使用structinput_event结构体,这个结构

c++ - 未记录的 GCC 扩展 : VLA in struct

在阅读Clang文档时,我发现了以下有趣的花絮:[1]clangdoesnotsupportthegccextensionthatallowsvariable-lengtharraysinstructures.Thisisforafewreasons:one,itistrickytoimplement,two,theextensioniscompletelyundocumented,andthree,theextensionappearstoberarelyused.Notethatclangdoessupportflexiblearraymembers(arrayswithazero

c++ - 错误 : implicitly deleted because the default definition would be ill-formed (vector of structs)

我无法编译我的C++程序。非常感谢有关此错误的一些帮助。在头文件中,我有这个:structworkerT{workerT():status(true),threadSem(0){}boolstatus;std::functionfunc;semaphorethreadSem;};std::vectorworkers;在我的.cc文件中,我尝试像这样初始化该vector:fill(workers.begin(),workers.end(),workerT());这失败并出现以下错误:错误:'TP::workerT&TP::workerT::operator=(constTP::worke

c++ - 将 std::chrono::system_clock::time_point 转换为 struct timeval 并返回

我正在编写一个C++代码,它需要访问一个使用timeval作为当前时间表示的旧C库。在旧包中获取我们使用的当前日期/时间:structtimevaldateTime;gettimeofday(&dateTime,NULL);function(dateTime);//Thefunctionwilldoitstask现在我需要使用C++chrono,例如:system_clock::time_pointnow=system_clock::now();structtimevaldateTime;dateTime.tv_sec=????//HelpappreaciatedheredateTim