Development/C, C++(556)
-
멤버 변수 접근- 구조체 변수를 사용하는 법, 구조체 변수의 초기화, 구조체 변수의 복사
구조체 변수로 멤버 변수에 접근하기 구조체 변수를 사용하는 법 구조체 변수의 초기화 구조체 변수의 복사 구조체 변수를 사용하는 법 sp1.x; 구조체 변수sp1멤버 변수에 접근하게 해주는 구조체 변수의 이름을 지정접근 연산자.구조체 변수로 멤버 변수에 접근하는 연산자 지정멤버 변수x접근하려는 멤버 변수의 이름을 지정 구조체 변수의 초기화 중괄호를 이용한 '구조체 변수'의 초기화 시 주의사항으로 구조체 변수의 선언과 구조체 변수의 초기화를 따로 하면 에러가 발생 구조체 초기화 예 struct point sp1 = {10, 20};//정상struct point sp1; sp1.x=10; sp1.y=20;//정상struct point sp1; sp1={10, 20}; //에러(ERROR) 구조체 변수의 복사 ..
-
구조체 변수-구조체 정의, 구조체 변수 선언, 일반 변수 vs 구조체 변수
구조체 변수 멤버변수를 접근하는 변수 구조체 변수도 다른 일반 변수와 같이 배열 및 포인터로 사용할 수 있습니다. 구조체 정의, 구조체 변수 선언 – 동시에 #include struct point{ // 구조체 정의 int x; int y; } s1, s2, s3; // 구조체 변수 선언 int main(void){ // ....... return 0; } 구조체 정의, 구조체 변수 선언 – 따로 #include struct point{ // 구조체 정의 int x; int y; }; int main(void){ // 구조체 변수 선언 struct point s1, s2, s3; // ....... return 0; } 일반 변수 vs 구조체 변수 일반변수와 구조체 변수의 선언방식은 동일합니다. 일반 변..
-
구조체(struct)
구조체(struct) 하나 이상의 변수를 묶어 그룹화하는 사용자 정의 자료형 구조체는 같은 자료형을 그룹화하거나 다른 자료형을 그룹화할수 있습니다. 구조체는 같은 자료형을 그룹화하거나 다른 자료형을 그룹화할수 있습니다. 같은 자료형 그룹화다른 자료형 그룹화int a; int b; int c;int a; float b; double c; 구조체의 정의 struct point{ int x; int y; } 구조체 키워드struct구조체의 시작을 알리는 struct 키워드 지정구조체 이름point구조체를 구분하는 이름멤버 변수int x; int y;구조체를 구성하는 구조체 멤버 변수의 이름 구조체 필요성 코딩 시 관련 데이터를 묶어서 하나의 자료형으로 그룹화하면 관리가 쉬어지고 코드의 가동성을 높아지고 간결성..
-
Ex04-int*형 포인터 변수에 int형 변수의 주소를 저장하고 이 주소에 데이터 저장 후 출력하기
int*형 포인터 변수에 int형 변수의 주소를 저장하고 이 주소에 데이터 저장 후 출력하기 메모리 구조 int a=0, b=0, c=0; int* ip=NULL;ip=&a; *ip=10;ip=&b; *ip=20;ip=&c; *ip=30; 소스코드 #include int main( ) { int a=0, b=0, c=0; int* ip=NULL; // 포인터 변수 선언 ip=&a; // 주소 저장 *ip=10; printf("%d %d %d %d\n", a, b, c, *ip); ip=&b; // 주소 저장 *ip=20; printf("%d %d %d %d\n", a, b, c, *ip); ip=&c; // 주소 저장 *ip=30; printf("%d %d %d %d\n", a, b, c, *ip); r..
-
Ex03-같은 메모리 공간 이름
같은 메모리 공간 이름 char*형의 포인터 변수에 char형 변수의 주소 저장하기 c == *&cp == *cp ==**&cp 메모리 구조 소스코드 #include int main( ) { char c='A'; char* cp=NULL; cp=&c; // 주소 저장 printf("%x %c %c\n", &c, c, *&c); printf("%x %x %x\n", &cp, cp, *&cp); printf("%c\n", c); // 직접 접근, A출력 printf("%c\n", *&c); // 직접 접근, A출력 (추가로 확인 출력) printf("%c\n", *cp); // 간접 접근, A출력 printf("%c\n", **&cp); // 간접 접근, A출력 (추가로 확인 출력) return 0; } 출..
-
Ex02-포인터변수 선언방법, 포인터 변수 크기, 포인터 변수 주소 출력
포인터변수 선언방법, 포인터 변수 크기, 포인터 변수 주소 출력 모든 포인터 변수는 4byte 소스코드 #include int main(void) { // 포인터 변수 선언 char* cp=NULL; // char형 주소를 저장하는 포인터 변수 cp int* ip=NULL; // int형 주소를 저장하는 포인터 변수 ip //주소, 값 출력 printf("%x %x %x\n", &cp, cp, *&cp); printf("%x %x %x\n", &ip, ip, *&ip); //포인터 변수 크기 출력 printf("%d %d \n", sizeof(char*), sizeof(int*)); // 4, 4 출력 //자료형 크기 출력 printf("%d %d \n", sizeof(char), sizeof(int))..