20)浅谈C语言之结构体与strcpy()
Posted 流浪孤儿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20)浅谈C语言之结构体与strcpy()相关的知识,希望对你有一定的参考价值。
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<string.h> //结构体 /*书---复杂对象 名字-作者-出版社-定价-书号*/ //复杂对象-结构体-我们自己创造出来的一种类型 //使用结构体首先创建结构体类型 struct Book//struct Book就是一个类型名相当于int,只不过int是系统的内置类型 //内置类型不需要我们定义就可以使用,结构体类型需要我们自己定义 { char name[20];//C语言程序设计 short price;//定价55 }; int main() { //利用结构体类型-创建一个该类型的结构体变量,就和用int内置类型创建int类型的变量一样 struct Book b1 = { "C语言程序设计",55 }; struct Book *pb = &b1; //利用结构体指针变量来引用结构体变量成员 printf("书名是:%s\\n定价是:%d元\\n", (*pb).name,(*pb).price);//结构体成员运算符优先级高于解引用操作符 printf("书名是:%s\\n定价是:%d元\\n", pb->name, pb->price);//->更加方便的引用符号,引用b1的成员,而pb指向b1 //结构体变量.成员 //结构体指针->成员 printf("书名是:%s\\n定价是:%d元\\n", b1.name, b1.price); //修改结构体变量的成员 b1.price = 45; //b1.name="C++";会报错,因为price是变量可以直接改,而name是数组名,是一个地址,地址是常量 strcpy(b1.name, "C++");//strcpy-string copy-字符串拷贝-库函数-string.h printf("更改后的书名:%s\\n", b1.name); printf("降价后的价格:%d元\\n", b1.price); return 0; } |
21)C语言之悬空else
以上是关于20)浅谈C语言之结构体与strcpy()的主要内容,如果未能解决你的问题,请参考以下文章
C++结构体中定义函数(C++结构体与C语言结构体区别)(C++结构体与C++类的区别)(结构体函数)