zoukankan      html  css  js  c++  java
  • c语言学习笔记

    前面在学习枚举类型enum时就觉得有些不习惯,那里习惯理解了的话,到结构体这里的理解就更方便些了,因为两者有一些相似的地方。

    //用结构体登记一个学生的姓名和分数,如果小于60分,显示bad

    #include <stdio.h>


    typedef struct{                
      char name[20];
      float points;    
      char *appraise;  //这里用字符型指针,如果用普通字符串,外面无法赋值
    } students;             //结构体里面的参数也可以是结构体 ,用的时候用多个点号连接起来

    //定义一种结构体,typeof 数据 标签名,这里用typeof定义这个结构体为students

    //也可以这样定义

    struct students{         //用这种定义的话,后边的变量声明都要是  struct students ,比如main里的 lucky 要写成struct students lucky
      char name[20];    //如果用typedef就可以取一个更方便的名字,来指代struct students
      float points;
      char *appraise;
    };


    students give_appraise(students *s){//如果前面不用typedef定义,这里都得用struct students  
      if(s->points<60)
        s->appraise="bad";    //这里传递进来的是*s指针时才可以用s->这种箭头表示法,如果是只传递 s,得用s.appraise,同时还得return出去,虽然不像数组那样不可以返回,但这样明显没有指针操作方便 
      else
        s->appraise="good";  // 这种指针操作也可以写出 (*s).appraise  必须加括号因为.的优先级大于*
    }


    int main(void){
      students lucky = {"lucky",49,""};
      give_appraise(&lucky);  //传递结构体的地址
      printf("%s",lucky.appraise);

      return 0;
    }

  • 相关阅读:
    javascript学习笔记1
    html的那些小小细节
    高级排序之希尔排序
    归并排序
    java 块语句 和引用类型
    扩展思维
    javase jdk 环境变量 涵义
    java 冒泡排序 二分查找 选择排序 插入排序
    kafka原理
    java web 程序---注册页面密码验证
  • 原文地址:https://www.cnblogs.com/luckylihuizhou/p/6475639.html
Copyright © 2011-2022 走看看