c语言 机构体传给指针,注意使用结构体指针给函数传递参数。
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
为了增加参数调用的灵活性,可以利用结构体指针传递多个不同的参数进入C语言函数体。
最著名的例子就是用Win32API
HANDLE CreateThread(LPSECURITY_ATTRIBUTES
lpThreadAttributes,
DWORD dwStackSize,
LPTHREAD_START_ROUTINE
lpStartAddress,
LPVOID lpParameter,
DWORD dwCreationFlags,
LPDWORD lpThreadId);
函数来创建线程。
函数的返回值是一个线程句柄
LPSECURITY_ATTRIBUTES lpThreadAttributes一般设为NULL
DWORD dwStackSize 一般设为0
LPTHREAD_START_ROUTINE lpStartAddress 是一个函数指针,一般就是所要执行的函数名。(重要)
LPVOID lpParameter 无类型参数指针。一般用结构体指针传递参数。无参数时为NULL。(重要)
DWORD dwCreationFlags 线程执行模式:0(立即执行),CREATE_SUSPENDED(挂起)
LPDWORD lpThreadId 32位无符号整形指针。用来获取线程ID。
应用举例:
MultiThread3将演示如何传送一个指向结构体的指针参数。
建立一个基于对话框的工程MultiThread3,在对话框IDD_MULTITHREAD3_DIALOG中加入一个编辑框IDC_MILLISECOND,一个按钮IDC_START,标题为“开始” ,一个进度条IDC_PROGRESS1;
打开ClassWizard,为编辑框IDC_MILLISECOND添加int型变量m_nMilliSecond,为进度条IDC_PROGRESS1添加CProgressCtrl型变量m_ctrlProgress;
在MultiThread3Dlg.h文件中添加一个结构的定义:
struct threadInfo
{
UINT
nMilliSecond;
CProgressCtrl* pctrlProgress;
};
c语言 机构体传给指针,注意使用结构体指针给函数传递参数。相关推荐
- C语言结构体指针(指向结构体的指针)详解
当一个指针变量指向结构体时,我们就称它为结构体指针.C语言结构体指针的定义形式一般为: struct 结构体名 *变量名; 下面是一个定义结构体指针的实例: //结构体 struct stu{ cha ...
- C语言结构体的定义与使用、结构体数组、指向结构体的指针(有代码详解)
1.结构体的定义与使用 结构体是一种构造数据类型 把不同类型的数据组合成一个整体 结构体的定义形式: struct 结构体名{结构体所包含的变量或数组 }; 结构体是一种集合,它里面包含了多个变量或数 ...
- 自己实现了一个C语言例程,加深对宏、大小端、typeof宏、offsetof宏、指针变量、结构体、联合体的理解
如题所述,最近时间在复习C语言.自己实现了一个C语言例程,以加深对宏.大小端.typeof宏.offsetof宏.指针变量.结构体.联合体的理解.关于细分知识后续有空再填充- swap宏的使用: 对应 ...
- c语言学习笔记【结构体02】结构体指针变量与结构体变量的函数参数,C语言学习笔记结构体02结构体指针变量与结构体变量的函数参数.docx...
C 语言学习笔记[结构体02]结构体指针变量与结构体变量 的函数参数 C 语言学习笔记之结构体指针变量一提指针,那可 是 C 语言的核心了,有多少学子曾拜倒在指针的脚下.单纯的说指针,其实并不难,但是 ...
- python 结构体指针_C语言结构体指针(指向结构体的指针)详解
当一个指针变量指向结构体时,我们就称它为C语言结构体指针的定义形式一般为: struct 结构体名 *变量名; 下面是一个定义结构体指针的实例: //结构体 struct stu{ char *nam ...
- C语言中结构体指针出现重定义,C语言结构体指针中包含结构体指针
码农公社 210.net.cn 210是何含义?10月24日是程序员节,1024 =210.210既 210 之意. 将C++代码转化为C的过程中,一些C++的特性无法使用 类内私有变量在类内公共 ...
- 【C 语言】结构体 ( 指针运算与指针内存操作 | 结构体成员偏移量计算 )
文章目录 一.指针运算 与 指针内存操作 二.结构体偏移量计算 一.指针运算 与 指针内存操作 指针变量算术运算 ( 指针可以是任意值 ) : 指针 是一个变量 , 如果对指针进行 算术 / 逻辑 等 ...
- C语言结构体赋值和有指针成员的结构体赋值
1 结构体赋值 #include <windows.h>struct MyStruct {int a;int b;char c[20]; };int APIENTRY WinMain(H ...
- C语言:指针的偏移步长、结构体成员的偏移量、嵌套结构体成员的偏移量、结构体的内存对齐
文章目录 1 不同类型指针的偏移步长 2 结构体成员的偏移量 3 嵌套结构体成员的偏移量 4 结构体的内存对齐 4.1 内存对齐的原因与优点 4.2 结构体内存对齐的规则 4.3 结构体嵌套结构体时的 ...
- C语言结构体变量 指针以及对结构体成员的访问
文章目录 结构体 结构体变量访问成员的方法 结构体指针变量访问成员的方法 结构体 struct AGE {int year;int month;int day; }; struct STUDENT { ...
最新文章
- java 获取打印机缺纸_第三章软件
- 今日arXiv精选 | 46篇EMNLP 2021最新论文
- hadoop等的下载地址
- python3界面实例_程序人生——python3下tkinter的界面示例
- 移植U-Boot思路和实践 | 基于RK3399
- asp.net中验证控件的使用方法
- matlab 显示歌词,【Matlab编程】生日快乐歌(显示歌词)—matlab版
- 数字公式识别的学习笔记(legacy)
- 人生的四大天规,越早明白,越有福气
- 小爱同学,生命的意义是什么?
- matlab padarray,MATLAB中padarray函数用法
- android毕业论文附录,毕业论文常见格式 论文附录格式
- 简单的c语言游戏编程打地鼠,少儿创意编程scratch初级游戏--打地鼠
- 闲谈IPv6-为了每一粒沙,真实的代价!
- mac android使用WiFi安装应用调试程序
- ps怎样裁剪html网页,Photoshop另类实用技巧:切网页
- C语言基础级——标准输入和输出
- BMI值(Body Mass Index,简称BMI),是指身高体重指数,是国际上常用的衡量人体肥胖程度和是否健康的重要标准,BMI的计算公式是:体重指数(BMI)=体重(kg)÷身高2(m)。
- linux curl命令详解,以及实例
- Python文本情感分析实战【源码】
热门文章
- 区块链python还是c_区块链要学什么编程语言?
- C++ 实现matlab中值滤波函数medfilt2
- 寻找旋转数组的最小值
- 浅谈一下什么是越权问题?
- python如何安装sklearn库_1.sklearn库的安装
- python selenium中如何测试360等基于chrome内核的浏览器
- D. Boris and His Amazing Haircut(线段树)
- Android Camera2 之 CameraCaptureSession 详解
- ROS:optris热成像仪使用
- 程序员如何年入1000万,实现人生理想,走向人生巅峰!(史上最全)