结构体
#include <iostream> #include <cstring> using namespace std; // 声明一个结构体类型 Books,相当于 Java 中的类 struct Books { char title[50]; char author[50]; char subject[100]; int book_id; }; int main() { // 定义结构体类型 Books 的变量 Book1 Books book1; // 定义结构体类型 Books 的变量 Book1 Books book2; // book1 详述 strcpy_s(book1.title, "C++ 教程"); strcpy_s(book1.author, "Runoob"); strcpy_s(book1.subject, "编程语言"); book1.book_id = 1; // book2 详述 strcpy_s(book2.title, "CSS 教程"); strcpy_s(book2.author, "Peter"); strcpy_s(book2.subject, "前端技术"); book2.book_id = 2; // 输出 Book1 信息 cout << "第一本书 --> 标题:" << book1.title << "\t作者:" << book1.author << "\t题目:" << book1.subject << "\t编号:" << book1.book_id << endl; // 输出 Book2 信息 cout << "第二本书 --> 标题:" << book2.title << "\t作者:" << book2.author << "\t题目:" << book2.subject << "\t编号:" << book2.book_id << endl; system("pause"); return 0; }
输出:
结构体入参:
#include <iostream> #include <cstring> using namespace std; // 声明一个结构体类型 Books,相当于 Java 中的类 struct Books { char title[50]; char author[50]; char subject[100]; int book_id; }; // 结构体传参入函数参数中 void printBook(struct Books book); int main() { // 定义结构体类型 Books 的变量 Book1 Books book1; // 定义结构体类型 Books 的变量 Book1 Books book2; // book1 详述 strcpy_s(book1.title, "C++ 教程"); strcpy_s(book1.author, "Runoob"); strcpy_s(book1.subject, "编程语言"); book1.book_id = 1; // book2 详述 strcpy_s(book2.title, "CSS 教程"); strcpy_s(book2.author, "Peter"); strcpy_s(book2.subject, "前端技术"); book2.book_id = 2; // 函数调用 printBook(book1); printBook(book2); system("pause"); return 0; } // printBook()函数的实现 void printBook(struct Books book) { // 输出 Book 信息 cout << "标题:" << book.title << "\t作者:" << book.author << "\t题目:" << book.subject << "\t编号:" << book.book_id << endl; }
输出:
以指针形式入参:
#include <iostream> #include <cstring> using namespace std; // 声明一个结构体类型 Books,相当于 Java 中的类 struct Books { char title[50]; char author[50]; char subject[100]; int book_id; }; // 以指针的形式入参 void printBook(struct Books *book); int main() { // 定义结构体类型 Books 的变量 Book1 Books book1; // 定义结构体类型 Books 的变量 Book1 Books book2; // book1 详述 strcpy_s(book1.title, "C++ 教程"); strcpy_s(book1.author, "Runoob"); strcpy_s(book1.subject, "编程语言"); book1.book_id = 1; // book2 详述 strcpy_s(book2.title, "CSS 教程"); strcpy_s(book2.author, "Peter"); strcpy_s(book2.subject, "前端技术"); book2.book_id = 2; // 函数调用 printBook(&book1); printBook(&book2); system("pause"); return 0; } // printBook()函数的实现 void printBook(struct Books *book) { // 输出 Book 信息 cout << "标题:" << book->title << "\t作者:" << book->author << "\t题目:" <<book->subject << "\t编号:" << book->book_id << endl; }