C语言之高级指针应用二

本文介绍了C语言中指针的高级应用,包括指针的指针、函数指针与指针函数、无类型指针和const限定符。探讨了如何使用指针实现结构体中数据的增删改,并分享了在学习过程中遇到的问题和心得体会,强调了通过练习来深化对指针理解的重要性。
摘要由CSDN通过智能技术生成

指针高级应用

  • 指针的指针:用于存放指针变量的地址
    type **name;
  • 函数指针与指针函数
    函数指针:int *f(int x);
    指针函数: int (*p)();
    区别:函数指针本质是一个指针;指针函数本质是一个函数,返回值是一个地址。
  • 无类型指针
    定义: void *p;
    可以将任意类型的指针赋给无类型指针,但不能将无类型指针赋给其他类型指针,如若要赋值必须进行强转。
  • const限定符
    指向常量数据的指针:const int *p;
    常指针:int * const p;
    两者区别:常指针的值不可以修改,但指向的内容可修改;指向常量数据的指针,其值可以修改,但指向的内容不可修改。

指针实现结构体中数据的增删改

结构体定义

typedef struct staff
{
  char username[20];
  char password[20];
  char role[20];
  int flag;
}STAFF_T;
STAFF_T staffs[50] = {
      {"admin" ,"123456","admin"},
	  {"manage" ,"123456","manage"},
	  {"waiter" ,"123456","waiter"}
};

添加用户

void Staff_Add( STAFF_T  *people)//用户添加
{
	STAFF_T newple;
	char name[20];
	
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值