✅ 목표 (Goal)

프린틀 할때는 값 복사만 이루어져도 상관없지만,

초기화 하려면, 참조를 받아야 한다.

✅ 예쁘게 분할 해보자.

#define _CRT_SECURE_NO_WARNINGS

#include <stdio.h>
#include <string.h>

#include "book.h"

int main(void) {

	book_t book1;
	book_t book2;
	book_t book3;

	book_init(&book1, "야옹이 수영교실", "신현경", 14220);
	book_init(&book2, "천개산 패밀리 1", "박현숙", 12600);
	book_init(&book3, "세상은 이야기로 만들어졌다", "자미라 엘 우아실", 24300);

	book_print(&book1);
	book_print(&book2);
	book_print(&book3);

	return 0;
}
#define _CRT_SECURE_NO_WARNINGS

#ifndef __BOOK_T__
#define __BOOK_T__

#include <stdio.h>
#include <string.h>

typedef struct _book_t {
	char title[128];
	char author[128];
	int price;
} book_t;

void book_init(book_t* book, char* title, char* author, int price);
void print_book(book_t* book);

#endif
#include "book.h"

void book_init(book_t* book, char* title, char* author, int price) {
	strcpy(book->title, title);
	strcpy(book->author, author);
	book->price = price;
}

void book_print(book_t* book) {
	static count = 0;
	printf("[%d] %s / %s / \\\\%d\\r\\n", ++count, (*book).title, (*book).author, (*book).price);
}