C에서 배열을 할당할 수 없는 이유
C에서는 배열을 다른 배열에 직접 할당할 수 없습니다. 이 동작은 이상하게 보일 수 있지만 C의 언어 유산 때문입니다.
"오류 C2106: '=': 왼쪽 피연산자는 l-값이어야 합니다."라는 오류 메시지는 왼쪽 피연산자(여기서 경우, 값)은 할당할 수 있는 수정 가능한 개체인 l-value여야 합니다. 그러나 C에서는 배열이 l-값으로 간주되지 않습니다.
배열을 할당할 수 없는 이유
C 배열은 여러 가지 이유로 할당할 수 없습니다.
대체 솔루션
C에서 어레이 작업을 하려면 , 여러 대체 솔루션이 있습니다:
예:
#include <algorithm> // Original arrays int numbers[5] = {1, 2, 3}; int values[5] = {}; // Copying elements using std::copy std::copy(numbers, numbers + 5, values);
또는 std::array 사용:
#include <array> // Modern arrays std::array<int, 5> numbers = {1, 2, 3}; std::array<int, 5> values = {}; // Assignment values = numbers;
위 내용은 C에서 배열을 직접 할당할 수 없는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!