C++ 다차원 배열에서 표시된 요소만 출력하려면?
본문
using namespace std;
int main() {
int nums[2][4] = { {1, 2, 3, 4}, {5, 6, 7} };
for (int i = 0; i < 2; ++i) {
for(int j = 0; j < 4; ++j) {
cout << nums[i][j] << "\n";
}
}
return 0;
}
결과값
1
2
3
4
5
6
7
0
C++에서 2차원 배열 경우, 지정 길이보다 요소 개수가 작으면 0이 자동 배정되어
원래 배열엔 없는 결과값의 빨간색 부분 0이 출력됩니다.
순수하게 배열에 적힌 숫자만 가져오는 가장 최선의 방법은
행과 열의 요소 개수를 자동 계산해 가져오는 것 같은데,
검색해보니 행은 미지정 가능하나 열 부분은 반드시 지정해야 하더라구요.
혹시, 이런 경우엔 어떤 식으로 처리해서 배열요소만 출력되게 할 수 있는지?
!-->
답변 1
#include <iostream>
using namespace std;
int main() {
int nums[2][4] = { {1, 2, 3, 4}, {5, 6, 7} };
for (int i = 0; i < 2; ++i) {
for(int j = 0; j < 4; ++j) {
if(nums[i][j] != NULL && nums[i][j] != 0)
cout << nums[i][j] << "\n";
}
}
return 0;
}
이렇게 처리하면 되지 않을까요? 0이거나 null은제외
!-->
답변을 작성하시기 전에 로그인 해주세요.