c++ struct

#include <stdio.h>
#include <iostream>
using namespace std;


struct book{
    int id;
    char name[20];
    double price;
};

book book2;

book * book3;

book* getBook(char *name,int id);

book* getBook1(char *name,int id);

int main(){
    
    book java = {1,"ThinkInJava",100.18};
    
    book python = {2,"Python Book",20};
    
    cout << "id=" << java.id << ", name=" << java.name<< ",price=" << java.price << "\n";
    
    book *p = &java;
    
    cout << "id=" << p->id << ", name=" << p->name << endl;
    
//    book *p1 = {1,"ThinkInC++",110.18};
    
//    cout << "id=" << p1->id << ", name=" << p1->name << endl;

//    char name[15] = "ThinkInC";
    
    char * name = "ThinkInC";
    book *p2 = getBook1(name, 5);
    cout << "id=" << p2->id << ", name=" << p2->name << endl;
    
}

book* getBook(char * name,int id) {
    cout << "name=" << *name << endl;
    book2 = {id,*name,100};
    
    return &book2;
}

book* getBook1(char * name,int id) {
    cout << "name=" << *name << endl;
//    book2 = {id,name,100};
    
    book3 = new book;
    book3->id = id;
//    book3->name="hello";
    strcpy(book3->name, name);
    
    return book3;
}

print

id=1, name=ThinkInJava,price=100.18
id=1, name=ThinkInJava
name=T
id=5, name=ThinkInC

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值