프로그래밍 언어/C

[C/C++ 7.2] 구조체

물꼮이 2022. 3. 16. 00:42

구조체 사용

	// 1. 구조체 정의
	struct ABC {			// 함수와 다르게 () 안붙임!
		int x;	//멤버
		int y;
	};						// 여기도 세미콜론!!! ;
	ABC t;	//2. 구조체 변수 선언
	cin >> t.x >> t.y;			// .으로 멤버 접근 ! 



	// 2.  구조체 선언 후 요소 변경
	struct PROJECT {
		int num;
		char id;
		int vect[4];
	};
	PROJECT z;
	int a;
	cin >> a;
	if (a < 10) {					//***** 이문제 매우 중요 !!!!!!
		z.num = 5;
		z.id = 'G';
		// z.vect = { 1,2,3,4 };	// 배열을 위의 구조체 안에서 이미 초기화 했으므로 ={1,2,3,4}같은 식으로 지정 못함
		z.vect[0] = 1;				// 한번 선언을 한 뒤엔 숫자를 하나씩!!! 이렇게 넣어줘야 함 
		z.vect[1] = 2;
		z.vect[2] = 3;
		z.vect[3] = 4;
	}


	// 3. 구조체 선언 후 입력 받을 때 구조체 속의 배열 한꺼번에 입력 가능??

 

 

구조체 입력 한꺼번에 받기 

	struct Product {
		int straw;
		int melon;
		int water;
	};
	Product A, B, C;
	A = { 300,500,1000 };				//구조체 입력 이렇게 한꺼번에 받을 수 있음 !!1
	B = { 450,450,900 };
	C = { 200,150,700 };

 


구조체 배열 선언

	//구조체로 배열 만들기
	struct StructTrain{		
		int win;
		char name[10] = {0};
	};
	// 구조체 배열을 초기화(하드코딩) 하는 법 !!! ***
	StructTrain Train[7] = { {15,"summer"},{33,"cloe"},{24,"summer"},{28,"niki"},{32,"Jenny"},{20,"summer"},{40,"coco"} };
	StructTrain a;