c语言定义结构体可以直接声明结构体变量的,如下

struct Student{char *name;
int age;
}xiaoming

这样以来,我们就定义了一个结构体类型,同时声明了一个结构体变量xiaoming。那么。我们在main函数中怎样对这个结构体进行初始化呢?
可以这样

int main()
{   xiaoming.age = 15;xiaoming.name = (char *)malloc(sizeof(char) * 20);strcpy_s(xiaoming.name, 9, "xiaoming");cout << xiaoming.name << endl;
}

首先对于指针必须要进行赋值操作,可以用new,也可以用malloc函数,这里我们为指针申请了20个字符的空间,然后才能对这个指针赋值操作,由于我用的vs平台,所以要使用strcpy_s函数进行赋值操作。
下面说一下结构体指针作为成员函数参数的使用
首先声明定义一个函数

void showStudentInfo(struct Student * s){cout<<s->name<<endl;
cout<<s->age<<endl;
}

这样就声明好了,可以看到,函数的参数是结构体指针类型,下面我们调用它

showStudentInfo(&xiaoming)

这样就实现了这个函数的调用

c结构体中定义的成员指针赋值与结构体指针作为成员函数参数的使用相关推荐

  1. C语言中的指针应用,函数指针,指针函数,结构体中定义函数指针。

    指针函数 指针函数就是一个返回指针的函数,其本质是一个函数,该函数的返回值是一个指针. 声明一个指针函数 int* fun(int x,int y); 例子 typedef struct _Data{ ...

  2. C语言结构体中定义函数指针详解

    C语言结构体中定义函数指针详解 结构体指针函数应用场景之一--驱动程序编写 结构体的一些基本用法 形式1:先定义结构体类型,再定义变量 形式2:在定义类型的同时定义变量 形式3:直接定义变量,用无名结 ...

  3. C++结构体中定义虚拟函数

    C++结构体中定义虚拟函数 C++中一个结构体可以包含函数(这个函数在C++我们通常中称为成员函数),C++中的结构体体现了数据结构和算法的结合.类可以从结构体继承.如下列示例: #ifndef PU ...

  4. C语言高级编程:结构体中定义数组的“妙用”

    1. 说明 1)相同类型结构体变量可以直接赋值 2)在结构体中定义一个数组,可以用赋值语句拷贝整个数组,这也是数组间赋值的一个间接实现方式 3)在结构体中定义一个数组,可以传值调用的方法把它传递给函数 ...

  5. 结构体中定义函数指针

    结构体指针变量的定义,定义结构体变量的一般形式如下: 形式1:先定义结构体类型,再定义变量 struct结构体标识符 { 成员变量列表;- }; struct 结构体标识符 *指针变量名; 变量初始化 ...

  6. c语言中结构体类型定义的函数指针,结构体中定义函数指针

    结构体指针变量的定义 定义结构体变量的一般形式如下:形式1:先定义结构体类型,再定义变量struct 结构体标识符{ 成员变量列表;-};struct 结构体标识符 *指针变量名;变量初始化:stru ...

  7. python类定义中__init__(),在__init__中定义一个成员以在python中的类体中定义它的区别?...

    What is the difference between doing class a: def __init__(self): self.val=1 to doing class a: val=1 ...

  8. 【C 语言】结构体 ( 结构体中嵌套一级指针 | 分配内存时先 为结构体分配内存 然后再为指针分配内存 | 释放内存时先释放 指针成员内存 然后再释放结构头内存 )

    文章目录 一.结构体中嵌套一级指针 1.声明 结构体类型 2.为 结构体 变量分配内存 ( 分配内存时先 为结构体分配内存 然后再为指针分配内存 ) 3.释放结构体内存 ( 释放内存时先释放 指针成员 ...

  9. C++57个入门知识点_17 类的访问权限及C语言模拟类的封装(类的私有权限突破方法:编译期进行权限检查,运行期通过指针修改类的私有成员变量;利用函数指针对结构体中成员变量进行修改;CPU大小尾排列)

    接上篇:C++57个入门知识点_16 类的标准写法(类名.成员变量.成员函数及对象命名规则:成员变量一般为私有,成员函数为公有并暴露给外部使用成员变量:防止类过大,声明写在.h,实现写在.cpp,调用 ...

最新文章

  1. Matlab编程与数据类型 -- 奇数阶魔方矩阵的编程
  2. 一文读懂GoogLeNet神经网络 | CSDN博文精选
  3. Integer装箱和拆箱 以及扔玻璃球的题目
  4. ABAP WebService SRT框架的初始值处理
  5. 针对媒体不实报道误导大众--抹黑C#工资垫底
  6. 算法笔记 -- 离散化
  7. Sentinel服务熔断配置exceptionsToIgnore_削峰填谷_流量控制_速率控制_服务熔断_服务降级---微服务升级_SpringCloud Alibaba工作笔记0053
  8. 10010序列检测器的三段式状态机实现(verilog)
  9. LaTeX参考文献取消doi输出
  10. Webservice CXF 调用报错 Could not find conduit initiator for address:
  11. ogv格式怎么转换为MP4格式
  12. iPhone6 iPhone6 Plus 屏幕分辨率、尺寸的问题
  13. Docker容器内部无法访问外网原因之一
  14. FPGA在深度学习应用中或将取代GPU
  15. LimeSDR srsLTE实验
  16. mmdetectionV2.x版本 训练自己的VOC数据集
  17. c++对数函数 log() 操作
  18. 杭电OJ——第1000,1001题
  19. C++:实现量化forward rate agreement远期利率协议测试实例
  20. android nougat honr7,Honor 荣耀7 最新全功能NFC 体验

热门文章

  1. Navicat 直接生成 数据库表联系图
  2. 大悲宇宙成为第一位送拍世界顶级拍卖行的中国NFT数字艺术家!
  3. ElasticSearch实战系列02 SpringBoot + ElasticSearch 7.7 实现高仿QQ用户搜索:中文+拼音混合检索,并高亮显示
  4. 日照职业学校单招计算机模拟题,2016年山东日照职业技术学院单招模拟题(含解析)...
  5. Golang 配置代理
  6. 如何用python免费看美剧
  7. 如何导出iPhone手机中app共享文件夹的文件与闪退日志的收集
  8. Maven下载以及安装步骤(Windows10版本)
  9. kubectl get pods no resourse found...
  10. 叉积(向量之间的计算)