我是靠谱客的博主 犹豫口红,最近开发中收集的这篇文章主要介绍c语言中结构类型与结构变量,c语言中 结构变量,结构类型标示,结构类型定义的区别...,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

//

// main.c

// StructDemo2

//

// Created by 千 on 16/7/20.

// Copyright © 2016年 kodulf. All rights reserved.

//

#include //之前讲的是结构变量,现在讲结构标示

//2.结构类型-结构标示

/*

就有点像是java中的class

public Class Person{

int pid;

String name;

int age;

}

*/

struct Person{

int pid;

char name[10];

int age;

}p2,p3={1,"hello",3};//注意这了是有;的符号的,而且可以在这里进行初始化和申明

//结构类型-标记

struct NewPerson{

int pid;

char name[10];

int age;

};

//结构类型作为参数

void printPerson(struct NewPerson p){

printf("pid=%dn",p.pid);

printf("name=%sn",p.name);

printf("age=%dn",p.age);

printf("+++++++++++n");

}

//结构类型作为返回值

struct NewPerson getPerson(){

struct NewPerson p2;

p2.pid=0;

strcpy(p2.name,"p2 name");

p2.age=90;

return p2;

};

int main(int argc, const char * argv[]) {

// insert code here...

printf("Hello, World!n");

struct Person p1;//名称为person的结构体类型

p1.pid = 1;

strcpy(p1.name,"hello");//注意这个字符串的肤质不能使用p1.name ="hello";

p1.age=29;

printf("pid=%d,name=%s,age=%dn",p1.pid,p1.name,p1.age);

//3:改进,成为结构类型定义,通过类型定义的方式,实现和java非常类似的

typedef int BOOL; //这样bool 就代表int类型了

typedef struct{

int pid;

char name[10];

int age;

} Customer;

Customer c1;

c1.pid = 9;

strcpy(c1.name,"customer");

c1.age=9;

printf("pid=%d,name=%s,age=%dn",c1.pid,c1.name,c1.age);

//测试结构类型作为参数和返回值

struct NewPerson np1;

np1.pid = 90;

strcpy(np1.name, "new person");

np1.age = 29;

printf("开始输出new personn");

printPerson(np1);

//结构体,

struct NewPerson np2 = getPerson();//结构体是可以直接等号来复制的

printPerson(np2);

//4.结构体和数组

struct MyPoint{

int x;

int y;

};//注意了一定不能少了这个分号

struct MyCircle{

struct MyPoint center;//圆心

double r;//半径

};//注意了一定不能少了这个分号

struct MyPoint mp ;

mp.x=10;

mp.y=10;

struct MyCircle circle;

circle.center=mp;

circle.r=1.2f;

printf("圆心的坐标是x=%d,y=%d,r=%fn",circle.center.x,circle.center.y,circle.r);

//结构类型和数组

//首先结构体里面可以有数组,

struct StructDemo{

int pid;

char name[10];

int age;

};

//数组的类型也可以是结构体类型的

struct NewPerson persons[4];

struct NewPerson person1,person2,person3,person4;

person1.age=1;

strcpy(person1.name, "person1");

person1.pid = 1;

persons[0]=person1;

person2.age=2;

strcpy(person2.name, "person2");

person2.pid = 2;

persons[1]=person2;

person3.age=3;

strcpy(person3.name, "person3");

person3.pid = 3;

persons[2]=person3;

person4.age=4;

strcpy(person4.name, "person4");

person4.pid = 4;

persons[3]=person4;

for(int i=0;i<4;i++){

printPerson(persons[i]);

}

return 0;

}

最后

以上就是犹豫口红为你收集整理的c语言中结构类型与结构变量,c语言中 结构变量,结构类型标示,结构类型定义的区别...的全部内容,希望文章能够帮你解决c语言中结构类型与结构变量,c语言中 结构变量,结构类型标示,结构类型定义的区别...所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(70)

评论列表共有 0 条评论

立即
投稿
返回
顶部