C와 C++에서의 구조체 차이와 연속되었다고 생각하자. 크게 말로 설명하는거보다 코드로 보는 것이 더 편할 우리를 위해 표와 코드만을 준비할 수 있었지만 접근 한정자 차이때문에 생기는 문제만 있다고 생각해도 좋다. 1. 구조체에서 접근 한정자가 정의되어있지 않다면 public이고 클래스에서는 private이다. 하지만 클래스에서 이런 짓은 하지 말자. 알더라도 명시적으로 범위로 접근 한정자를 정해줄 수 있는데 왜 이러는 것인가. 물론 Java와 같이 package-private한 기능이 있는 것도 아니고, 그냥 이럴 경우 private밑에 써주도록 하자. struct MyStruct { int variable; // public }; class MyClass { int variable; // privat..
별로 길게 이야기 할 것도 없는 주제다. 사실 인터넷 찾아보면 금방 찾을 수도 있는 내용이지만 나를 위해 표로나 정리해보고자 했다. C C++ 멤버함수 선언 불가능 가능 struct MyStruct { void member_function(); // C는 불가능 }; 구조체 내부 변수 초기화 불가능 가능 struct MyStruct { int variable = 0; // C는 불가능 }; 초기화시 struct 키워드 필요 불필요 struct MyStruct {}; void foo() { struct MyStruct my_struct = ~~; // C MyStruct my_struct = ~~; // C++ } 정적 멤버 변수 또는 함수 불가능 가능 struct MyStruct { static int ..
출력하고자 하는 다이아몬드의 변의 길이 N 입력) 3 출력) * ******** *** * #include int main() { int n; printf("Input N: "); scanf("%d", &n); int lines = 2 * n - 1; for (int i = 0; i < lines; i++) { int blanks = lines - n - ((i < n) ? i : (lines - i - 1)); int stars = lines - 2 * blanks; for (int j = 0; j < blanks; j++) { printf(" "); } for (int j = 0; j < stars; j++) { printf("*"); } printf("\n"); } return 0; }
5개의 문자열을 받아 긴 문자열부터 출력 입력) 00000 00 000 0 0000 출력) 0 00 000 0000 00000 #include #include #include int compare(const void *, const void *); // 비교 함수 선언 int main() { unsigned int input_length = 5; char **input = (char **) malloc(sizeof(char *) * input_length); // 문자열 저장 포인터 for (unsigned int i = 0; i < input_length; i++) { *(input + i) = (char *) malloc(sizeof(char) * 10); // 9개의 문자를 받을 수 있는 문자열 g..
8.다음과 같이 크기가 26인 알파벳 대문자 A부터 Z를 저장한 다음,사용자로부터 하나의 문자를 입력받아 그 문자를 제외한 나머지 문자를 차례대로 5개씩 5줄로 출력하는 프로그램을 작성하세요. 입력된 문자가 A부터 Z사이의 알파벳 대문자가 아닐 경우에는 메세지를 출력합니다. 입력) 제외할 문자를 입력하세요 : F 출력) A B C D E G H I J K L M N O P Q R S T U V W X Y Z 입력) 제외할 문자를 입력하세요 : a 출력) A~Z 사이의 문자가 아닙니다. #include int main() { char alphabet[26]; for (char c = 65; c 90) { printf("A~Z 사이의 문자가 아닙니다.\n"); return -1; } int is_exclud..
학생들의 답안을 채점하는 프로그램을 작성하세요. 다음과 같은 2차원 배열이 학생들이 제출한 답이며, 모든 문제는 객관식으로 정답이 1~4입니다. 5명의 학생이 각각 10문제에 대한 답을 다음과 같이 제출했습니다. 문제의 정답은 프로그램 실행 시에 주어집니다. 학생 1 | 1 3 2 4 3 1 4 2 2 1 학생 2 | 3 2 4 2 2 1 1 3 4 1 학생 3 | 2 4 3 2 1 2 1 3 3 4 학생 4 | 2 3 3 1 1 3 2 2 4 4 학생 5 | 3 1 1 2 4 1 2 3 1 3 입력) 1번 문제의 정답을 입력하세요 : 3 2번 문제의 정답을 입력하세요 : 2 3번 문제의 정답을 입력하세요 : 3 4번 문제의 정답을 입력하세요 : 2 5번 문제의 정답을 입력하세요 : 4 6번 문제의 정답..
배열 a={1,2,3,4,5,6,7,8,9,10}을 생성하며, 사용자로부터 하나의 수를 입력받아 그 수만큼 배열의 값을 왼쪽으로 이동하고 오른쪽에는 0을 채우는 프로그램을 작성하세요 입력) 이동을 원하는 숫자를 입력하세요 : 5 출력) 6 7 8 9 10 0 0 0 0 0 #include int main() { int array[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; int shifted[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; int to_shift = 0; scanf("%d", &to_shift); for (int i = 0; i < 10 -to_shift; i++) shifted[i] = array[to_shift + i]; for (int i = ..
- Total
- Today
- Yesterday
- f320s
- d802
- Java
- rule_of_five
- vector
- dokdo-project
- c++11
- c++ 상속
- cyanogenmod
- f320k
- dokdo 4.0.3
- C++
- g2 korea
- linaro
- 객체지향
- LG
- G2
- 포인터
- 기타 ETF
- OOP
- StructuredTaskScope
- rule_of_three
- CM10.2
- nodeal
- dokdo project
- C++ 업캐스팅
- C
- Kotlin
- CM11
- c++ struct
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
