> 백엔드 개발 > C++ > C에서 배열을 주문하기 위해 std::sort를 사용하는 방법은 무엇입니까?

C에서 배열을 주문하기 위해 std::sort를 사용하는 방법은 무엇입니까?

Susan Sarandon
풀어 주다: 2024-10-24 01:57:29
원래의
597명이 탐색했습니다.

How to Use std::sort to Order an Array in C  ?

C에서 std::sort를 사용하여 배열 정렬

질문: C 표준 템플릿 라이브러리의 std::sort()를 어떻게 사용할 수 있나요? 배열을 오름차순으로 정렬하려면?

<code class="cpp">int v[2000];</code>
로그인 후 복사

답: C 11에서는 두 가지 편리한 기능을 활용할 수 있습니다.

<code class="cpp">std::sort(std::begin(v), std::end(v));</code>
로그인 후 복사
로그인 후 복사

추가 질문 : C에는 배열의 시작 위치와 끝 위치를 결정하는 방법이 있나요?

답변: 예, C 11에서 std::begin 및 std::end는 다음과 같습니다. 배열에 대해 오버로드됩니다.

<code class="cpp">std::sort(std::begin(v), std::end(v));</code>
로그인 후 복사
로그인 후 복사

이전 버전의 C를 사용하는 경우 자신만의 시작 및 끝 버전을 만들 수 있습니다.

비상수:

<code class="cpp">template<class Cont>
typename Cont::iterator begin(Cont&amp; c){
  return c.begin();
}

template<class Cont>
typename Cont::iterator end(Cont&amp; c){
  return c.end();
}</code>
로그인 후 복사

Const:

<code class="cpp">template<class Cont>
typename Cont::const_iterator begin(Cont const&amp; c){
  return c.begin();
}

template<class Cont>
typename Cont::const_iterator end(Cont const&amp; c){
  return c.end();
}</code>
로그인 후 복사

C 스타일 배열에 대한 오버로드:

<code class="cpp">template<class T, std::size_t N>
T* begin(T (&amp;arr)[N]){
  return &amp;arr[0];
}

template<class T, std::size_t N>
T* end(T (&amp;arr)[N]){
  return arr + N;
}</code>
로그인 후 복사

위 내용은 C에서 배열을 주문하기 위해 std::sort를 사용하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿