일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- Classic AUTOSAR
- 진료순서정하기
- MCU
- ecu
- diag
- 순수가상함수
- UDS
- 싱글링크드리스트
- Can
- UDS프로토콜
- C언어
- Application Layer
- 배열
- Mobilgen
- 단방향링크드리스트
- COM모듈
- CAN stack
- Can 스택
- C++
- Com Stack
- Com 스택
- VFB
- AUTOSAR
- AutoSar설계
- 정적할당
- C
- AUTOSAR CAN통신
- AUTOSA
- RTE
- softwareComponent
- Today
- Total
목록C++ (6)
이현구의 공부방
다형성은 객체지향 프로그래밍에서 중요한 개념중 하나이며, 코드의 재사용성을 높이고 유지보수를 용이하게 할 수 있는 개념입니다. 다시 말해, 같은 이름으로 선언된 함수나 연산자가 서로 다른 동작을 하도록 만드는 것을 의미합니다. 같은 이름으로 선언된 함수라고 하면 많이 접해본 '함수 오버로딩' 이 있습니다. 함수 오버로딩은 같은 이름의 함수를 여러개 정의하되, 매개변수의 타입과 개수, 순서등을 다르게 하여 함수 호출 시 알맞은 함수가 선택되어 호출되게하는 것입니다. 아래 예제를 보시면 vector_sort 함수명은 같지만 어떤 타입을 넘겨주는냐에 따라 호출되는 함수가 다릅니다. vector vector_sort(vector emergency) { vector vec(emergency); sort(vec.b..
문제 설명 외과의사 머쓱이는 응급실에 온 환자의 응급도를 기준으로 진료 순서를 정하려고 합니다. 정수 배열 emergency가 매개변수로 주어질 때 응급도가 높은 순서대로 진료 순서를 정한 배열을 return하도록 solution 함수를 완성해주세요. 제한사항 중복된 원소는 없습니다. 1 ≤ emergency의 길이 ≤ 10 1 ≤ emergency의 원소 ≤ 100 입출력 예 emergency result [3, 76, 24] [3, 1, 2] [1, 2, 3, 4, 5, 6, 7] [7, 6, 5, 4, 3, 2, 1] [30, 10, 23, 6, 100] [2, 4, 3, 5, 1] 풀이 1. 전달된 값을 배열에 담아 내림차순으로 정렬 2. 기존 배열의 값과 내림차순된 배열의 값을 순차적으로 값을 ..
정수형 값이 홀수인지 짝수인지 구분하는 계산 방법 중 많은 사람이 나머지 값을 가지고 홀수 짝수를 구분 짓는 경우가 많다. string solution(int num) { string answer = ""; if (num % 2 == 1 || num % 2 == -1 ) { answer = "Odd"; } else { answer = "Even"; } return answer; } 하지만 비트의 첫번째 자릿수가 1인지 아닌지 확인으로도 홀수 짝수 구분이 가능합니다. #include #include using namespace std; string solution(int num) { string answer = ""; return num & 1 ? "Odd" : "Even"; // &은 비트연산의 AND ..
대개는 int형 배열 값들의 평균 구하는 부분에서 보통은 아래와 같은 코드로 반복문을 사용하여 배열의 값들을 합해준 뒤에 배열의 size만큼 나누어 평균을 구하게 된다. #include double solution(vector arr) { double answer = 0; int size = arr.size(); double sum = 0; for (int i = 0; i < size; i++) { sum += arr[i]; } answer = sum / size; return answer; } 하지만 accumlate를 쓰게 된다면 간단하게 배열의 합을 구할 수 있습니다. #include #include #include using namespace std; double solution(vector ar..
C++에서 String 문자열을 사용하기 위해선 아래 헤더를 포함시킨 후 진행 c 언어 : #include c++ : #include String을 Char 형 배열에 넣기 위해서는 strcpy (문자열 복사) 를 사용함. #include #include int main() { char charArray[80]; string str; int lenth = 0; cin >> str; // 문자열 입력 // 문자열을 char형 배열에 넣기 strcpy(charArray, str.c_str()); lenth = strlen(charArray); // c_str()을 사용하여 String을 char형으로 변환하여 복사 for (int i = 0; i < lenth; i++) { cout
배열의 단점은 선언 시점에서 크기를 정해야하며, 중간에 크기를 바꾸고 싶어도 바꾸지 못하는 불가변 적인 특성을 지니고 있습니다. 때문에 입력 받은 크기 만큼 배열을 만들고 싶다면 동적할당을 통하여 크기를 가변 할 수 있습니다. #include int main() { // 정적할당과 초기화 int arr[5] = { 0, 1 ,2 ,3 ,4}; // 포인터 p는 배열 arr이와 동일하다고 봐야한다. int *p = arr; // 동적할당 int *arry2; // 동적할당하여 사용할 배열 변수 선언 int n = 0; // 동적할당할 사이즈 (배열 크기 선언할 변수) scanf("%d",&n);// 사이즈 입력 arry2 = (int*)malloc(sizeof(int) * n);// 동적할당 arry2[n]