zoukankan      html  css  js  c++  java
  • 结构体中含有一级指针

    头文件:

    #include<stdio.h>
    #include<stdlib.h>
    #include <string.h>

    全局变量:

    const int t_length = 3;
    
    typedef struct Teacher{
        int id;
        char name[64];
        char *alis;
        int age;
    }Teacher;

    函数原型:

    void createTeahcer(Teacher **ppt,int num); //给结构数组分配内存
    
    void freeTeacher(Teacher *pt, int num); //释放内存
    
    void sortTeacher(Teacher *pt, int num); //排序数组
    
    void printTeacher(Teacher *pt, int num); //遍历数组

    实现方法:

    void createTeahcer(Teacher **ppt,int num){
    
        int i;
    
        Teacher *temp;
    
        temp = (Teacher *)malloc(sizeof(Teacher) * num);
    
        for(i = 0; i < num; ++i){
            temp[i].alis = (char *)malloc(sizeof(char) * 64);
        }
    
        *ppt = temp;
    
    }
    
    void freeTeacher(Teacher *pt, int num){
        
        int i;
    
        if(pt != NULL){
            
            for(i = 0; i < num; ++i){
    
                if(pt[i].alis != NULL){
                    free(pt[i].alis);
                }
    
            }
    
            free(pt);
        }
    
        
    }
    
    void sortTeacher(Teacher *pt, int num){
    
        int i, j;
    
        Teacher temp;
    
        for(i = 0; i < num; ++i){
    
            for(j = i + 1; j < num; ++j){
            
                if(pt[j].age < pt[i].age){
                    
                    temp = pt[j];
                    pt[j] = pt[i];
                    pt[i] = temp;
    
                }
            }
    
        }
    
    }
    
    void printTeacher(Teacher *pt, int num){
    
        int i;
    
        printf("
    ");
        for(i = 0; i < num; ++i){
            printf("学号:%d 姓名:%s 别名:%s 年龄:%d
    ", pt[i].id, pt[i].name, pt[i].alis, pt[i].age);
        }
    
    
    }
  • 相关阅读:
    Jmeter的几种参数化方式
    selenium实现原理
    python问题
    跨域问题的解决方案
    jquery的ajax的语法
    给JavaScript 对象添加方法
    循环遍历对象的属性
    Function专题 以及js的预解析理解
    如何理解javascript中类和对象这两个概念?
    封装原生ajax
  • 原文地址:https://www.cnblogs.com/zhouquan-1992-04-06/p/6240045.html
Copyright © 2011-2022 走看看