结构体\结构体指针

简介: 结构体\结构体指针

可以通过修改被我注释掉的部分自行测试功能

#include<stdio.h>
#include<stdlib.h>
 
//函数声明
struct pot* getstruct(struct pot*);
void output(struct pot);
void print(const struct pot*p);
 
//定义结构体
typedef struct pot
{
  int x;
  int y;
}pot;
 
int main()
{
  //初始化
  pot one={0,0};
 
  //getstruct(&one);  //输入one的值x,y
  //output(one);
 
  //output(*getstruct(&one));//输出输入值的函数
  //print(getstruct(&one));   //同上
 
  getstruct(&one)->x=0; //在函数里得到赋值并输出,出函数后x归零
  output(one);    //再次输出修改过后的one
 
    /*getstruct(&one) = (struct pot){12,23};这样写是不行的
  output(one);
  system("pause");
  return 0;
}
//函数定义
struct pot* getstruct(struct pot*p)
{
  printf("getstruct input:");
  scanf("%d,%d",&p->x,&p->y);
  printf("%d,%d\n",p->x,p->y);
  return p;
}
void output(struct pot p)
{
  printf("%d,%d\n",p.x,p.y);
}
void print(const struct pot*p)
{
  printf("%d,%d\n",p->x,p->y);
}


目录
相关文章
|
2月前
|
存储 C语言
C语言如何使用结构体和指针来操作动态分配的内存
在C语言中,通过定义结构体并使用指向该结构体的指针,可以对动态分配的内存进行操作。首先利用 `malloc` 或 `calloc` 分配内存,然后通过指针访问和修改结构体成员,最后用 `free` 释放内存,实现资源的有效管理。
225 13
|
2月前
|
存储 人工智能 算法
数据结构实验之C 语言的函数数组指针结构体知识
本实验旨在复习C语言中的函数、数组、指针、结构体与共用体等核心概念,并通过具体编程任务加深理解。任务包括输出100以内所有素数、逆序排列一维数组、查找二维数组中的鞍点、利用指针输出二维数组元素,以及使用结构体和共用体处理教师与学生信息。每个任务不仅强化了基本语法的应用,还涉及到了算法逻辑的设计与优化。实验结果显示,学生能够有效掌握并运用这些知识完成指定任务。
72 4
|
4月前
|
存储 Go
Go: struct 结构体类型和指针【学习笔记记录】
本文是Go语言中struct结构体类型和指针的学习笔记,包括结构体的定义、成员访问、使用匿名字段,以及指针变量的声明使用、指针数组定义使用和函数传参修改值的方法。
|
5月前
|
存储 C语言
指针与结构体
指针与结构体
49 0
|
7月前
|
算法 Java 程序员
面向对象编程(OOP)通过对象组合构建软件,C语言虽是过程式语言,但可通过结构体、函数指针模拟OOP特性
【6月更文挑战第15天】面向对象编程(OOP)通过对象组合构建软件,C语言虽是过程式语言,但可通过结构体、函数指针模拟OOP特性。封装可使用结构体封装数据和方法,如模拟矩形对象。继承则通过结构体嵌套实现静态继承。多态可通过函数指针模拟,但C不支持虚函数表,实现复杂。C语言能体现OOP思想,但不如C++、Java等语言原生支持。
75 7
|
7月前
【洛谷 P1563】[NOIP2016 提高组] 玩具谜题(模拟+结构体数组+指针)
**摘要:** NOIP2016提高组的玩具谜题是一个编程挑战,涉及理解玩具小人在圆圈中的相对位置。题目要求解决一系列基于小人朝向(内或外)的左右数指令,来找到最终目标小人。输入包含小人数量、指令数、每个小人的朝向和职业,以及指令详情。输出是最后到达的小人的职业。给定的AC代码使用指针模拟环状数组,通过按位异或判断朝向来移动指针。样例展示了问题的解决过程。子任务有不同的数据规模和限制条件。
68 0
|
8月前
|
存储 C语言 索引
指向结构体数组的指针
指向结构体数组的指针
95 0
|
8月前
|
存储 C++
指向结构体变量的指针
指向结构体变量的指针
57 0
|
8月前
|
C++
结构体变量与结构体变量指针作为函数参数
结构体变量与结构体变量指针作为函数参数
80 0
|
3月前
|
C语言
无头链表二级指针方式实现(C语言描述)
本文介绍了如何在C语言中使用二级指针实现无头链表,并提供了创建节点、插入、删除、查找、销毁链表等操作的函数实现,以及一个示例程序来演示这些操作。
48 0