Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 자취준비
- 후니의쉽게쓴시스코네트워킹
- 캡쳐링
- 막대기자르기
- 튜터링
- leetcode
- 정보
- 자료구조
- 알고리즘
- array
- 코딩테스트
- 정보처리기사개정
- 부분합알고리즘
- 생애첫계약
- 청년내일채움공제
- 전화영어
- 취업사실신고
- 동적계획법
- 순열
- 네트워크
- HeadFirstDesignPatterns
- 프로그래머스
- 실업인정인터넷신청
- 모여봐요동물의숲
- C++
- 후니의쉽게쓴시스코라우팅
- IT기초
- 실업급여
- 회사폐업
- 사회초년생
Archives
- Today
- Total
따봉도치야 고마워
[c/c++] 배열 한번에 초기화하는 법 본문
일단 0으로 초기화하는 방법은
int array[10] = {0,};
그럼 다른 값으로 초기화 하려면
int array[10] = {5,};
가 될까 싶었는데, 결론적으론 안된다. (첫 원소값만 5가 되고 나머지는 0으로 초기화 된다)
그럼 특정 값으로 배열을 초기화하는 방법은 뭐가 있을까
1.for문 돌리기
이게 싫어서 찾아보기 시작한건데, 오히려 몇몇 방법에 비해 이게 더 간단하고 빠르다는 말이 많다
2.GCC를 사용한다면
int array[100] = { [0 ... 99] = -1 }; //0부터 99까지 -1로 초기화
3.C++인 경우 fill_n 함수 사용
std::fill_n(array, 100, -1);
4.기타
C#의 경우 Enumerable.Repeat(값, 사이즈).ToArray()를 사용하면 된다.
ex) bool[] booleanArray = Enumerable.Repeat(true, 10).ToArray();
C에서 -1이나 0은 memset함수로 초기화가 가능하다.
ex) memset(arr, 0, sizeof(int) * SIZE);
'프로그래밍 > 공부' 카테고리의 다른 글
[디자인패턴] 디자인패턴이란? (2) | 2020.03.02 |
---|---|
교착상태(DeadLock)란? (0) | 2020.02.26 |
프로세스(Process)와 쓰레드(Thread)의 차이 (0) | 2020.02.26 |
[자료구조]해시테이블 (HashTable)이란? (0) | 2020.02.25 |
배열과 리스트의 차이 (2) | 2020.02.25 |
Comments