배열의 요소를 초기화하지 않으면 디버그 할 때 임의의 큰 번호가 할당 된 것을 볼 수 있습니다. 숫자가 어떻게 결정되는지 궁금하십니까?C 배열 요소 초기화
2
A
답변
3
이들은 배열의 공간이 할당 된 메모리에 이미있는 값입니다. 따라서 여기에는 "결정"이 없습니다.
2
기술적으로 초기화되지 않은 변수를 읽는 것은 정의되지 않은 동작입니다. 남은 메모리 쓰레기에서부터 컴파일러가 미리 정의한 값에 이르기까지 다양합니다.
0
배열을 선언하면 스택 포인터가 추가되고 첫 번째 요소의 주소가 반환됩니다. 즉, 메모리의 데이터는 변경되지 않습니다.
+0
당신의 대답은 내가 묻고있는 것과 아무런 관련이 없습니다. 무작위 데이터가 어떻게 초기화되는지 (또는 어떻게 결정되는지), 초기화되지 않은 배열 요소 –
관련 문제
- 1. C 배열 초기화
- 2. C++ 배열 크기 초기화
- 3. 확장 된 배열 요소 초기화
- 4. C++ 배열 초기화
- 5. C++ 클래스의 배열 초기화
- 6. 목표 - C, 배열 초기화
- 7. C++ 배열 초기화
- 8. C++ 배열 초기화
- 9. C++ 배열 초기화
- 10. C++ 배열 초기화
- 11. C 배열 초기화
- 12. 개체 배열 초기화 (C++)
- 13. 구성 요소 오류 초기화 C#
- 14. 배열 배열 초기화
- 15. 문자열의 정적 배열 초기화 (C++)?
- 16. C++ 배열 초기화, 좋은 연습
- 17. C++ 다차원 배열 초기화 C에서
- 18. 부스트 배열 C++의 초기화
- 19. C++에서 문자열 초기화 배열
- 20. C - 함수에서 전역 배열 초기화
- 21. 일정 시간에 C++ 배열 초기화
- 22. C# 배열 초기화 - 기본값이 아닌
- 23. 배열 초기화
- 24. 배열 초기화
- 25. 인라인 배열 초기화
- 26. C++에서 배열 - 배열 요소 추가
- 27. 배열 초기화 문제
- 28. 생성자의 초기화 목록에서 배열 초기화
- 29. C - 구조체 배열 요소 교환
- 30. C - 배열 끝을 넘어서는 요소
아니요, 정의되지 않은 동작은 아닙니다. 이러한 값이 해당 유형의 트랩 표현에 해당하는 경우에만 정의되지 않은 동작입니다. 정수 타입에 대한 트랩 표현을 가진 현재 아키텍처에 대해서는 잘 모릅니다. –
@Jens Gustedt : 실제로,이 상황을 무엇이라고 부르는 지에 관한 다른 관련 주제에 대한 논의가있는 것으로 보입니다. 제안? – Tudor
C11은 ** 불확정 값 ** 지정되지 않은 값 또는 트랩 표현 및 ** 지정되지 않은 값 ** 이 국제 표준에서 어떤 값이 선택되는지에 대한 요구 사항이 부과되지 않는 관련 유형의 유효한 값 어떤 인스턴스 –