본문 바로가기
728x90
728x90
SMALL

C │ C++ │ C#/C++42

C++ Chapter 6.8 : 포인터의 연산과 배열 인덱싱 포인터 연산 포인터를 uniptr_t 로 형변환 하면 주소가 정수로 보기 좋게 나온다. using namespace std; int main() { int value = 7; int * ptr = &value; cout 2023. 10. 15.
C++ Chapter 6.7 : 포인터와 정적 배열 포인터와 배열 이름은 일맥상통하는게 있다. int array[5] = {0, 1, 2, 3, 4}; int * ptr = array; 배열의 이름 👉🏻 포인터 상수나 마찬가지. $($변하지 않는 주소 값$)$ array 와 &array[0] 은 같다. ο 배열의 이름 👉🏻배열의 첫번째 원소의 주소 *array 와 array[0] 은 같다. ο *array 👉🏻 배열의 첫번째 원소를 간접 참조함. int * ptr = array; ο ptr 포인터 변수가 array 배열의 주소를 담게 되었으니 이제 ptr로 array 배열에 간접참조가 가능해짐. ο *ptr 와 array[0] 은 같다. ο *ptr = 100 은 array[0]=100 과 같다. ■ 배열의 주소를 복사해 담은 포인터로 배열의 원소 값을 .. 2023. 9. 28.
C++ Chapter 6.6 : 포인터의 기본적인 사용법 포인터 메모리 주소를 담는 변수를 뜻한다. & 변수 앞에 붙으면 그 변수의 주소 * 포인터 변수 앞에 붙으면 그 포이터 변수가 담고 있는 주소에 담긴 데이터 간접 참조 포인터 변수의 선언 포인터 선언시 가리킬 메모리의 데이터 타입 + * ex) int *, double * int x = 5; int * ptr = &x; *ptr = 7; // x 값이 7로 변한다. x=7 이나 마찬가지. int * ptr = &x; int 타입의 변수의 주소를 담을 수 있는 포인터라는 의미에서 int * 포인터 변수 ptr은 int형 변수인 x의 주소로 초기화 됐다. 포인터 ptr은 x 를 가리키고 있다. *ptr = 7; ptr은 현재 x의 주소를 담고 있는데 * 를 포인터 앞에 붙이면 x의 데이터를 참조할 수 있게 .. 2023. 9. 4.
C++ Chapter 6.5 : C언어 스타일의 배열 문자열 C언어 스타일의 배열 문자열 char string[] = “Hello !”; 문자열의 끝을 알 수 있도록 \0 가 끝에 붙어있다. ο 문자열이 6글자라도 sizeof 해보면 7이 나오는 이유. 문자열의 입력 std::cin 공백 단위로 입력을 받기 때문에 공백 전까지만 받는다. ο 따라서 cin에 “hello, world!”를 입력하면 “hello,”까지만 문자 배열에 대입된다. char myString[255]; // 254개의 문자(char)가 들어갈 수 있는 배열 cin >> myString; // Jack 입력 myString[0] = 'A'; // Aack 으로 바뀜 std::cin.getline cin.getline$($myString, 255$)$; 공백이 포함된 문자열을 받으려면 cin.g.. 2023. 9. 3.
C++ Chapter 6.4 : 정적 다차원 배열 이차원 배열 int Array [ row ][ col ] 초기화 const int num_rows = 3; const int num_columns = 5; int array[num_rows][num_columns] = { {1, 2, 3, 4, 5}, //row0 {6, 7, 8, 9, 10}, //row1 {11, 12, 13, 14, 15} //row2 }; int array[2][3] = {0}; // 된다! row * col 개 만큼 0으로 채움. int array[num_rows][num_columns] = { {1, 2, }, // 나머지 3개는 0 으로 채워준다. 1 2 0 0 0 {6, 7, 8, 9, 10}, {11, 12, 13, 14, 15} }; int array[][num_colu.. 2023. 8. 31.
C++ Chapter 6.3 : 배열과 선택 정렬 정렬 : 원소들끼리 서로 크기를 비교하여 원소들이 크기 순서대로 위치할 수 있도록 자리를 바꿔주는$($swap$)$ 작업. 오름차순으로 정렬하면 최소값이 맨 왼쪽에, 최대값이 맨 오른쪽에 위치하게 되며 크기 순서대로 나열된 형태가 된다. /* 비교 */ n = 5 일때 i = 0 와 j = 1 2 3 4 들 비교 i = 1 와 j = 2 3 4 들 비교 i = 2 와 j = 3 4 들 비교 i = 3 -> j = 4 i는 0부터 시작해서 n-2 까지 (i = n - 1 일땐 뒤에 숫자가 남아있는게 없어서 비교할게 없다.) j는 i + 1 부터 시작해서 n - 1까지 #include using namespace std; void printArray(const int array[], const int len.. 2023. 8. 30.
728x90
728x90
LIST