English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

C에서 연산자를 사용하지 않고 0 나누기 오류를 잡는 방법은 무엇인가요? ++C에서 변수 초기화

C ++전체 배열을 반환하지 않지만 배열을 가리키는 포인터를 반환할 수 있습니다. 함수 외부에서는 지역 변수의 주소를 반환할 수 없습니다. 지역 변수를 정적으로 만들면 지역 변수의 주소를 반환할 수 있습니다.

포인터를 반환하는 문법입니다.

int * function_name()
{ body }

이곳에서,

function_name-사용자가 주어진 함수 이름

함수에서 배열을 반환하는 예제입니다.

예제

#include <iostream>
using namespace std;
int * ret() {
   static int x[3];
   for(int i=0 ; i<5 ; i++) {
      cout << " " << &x[i];
   }
   return x;
}
int main() {
   ret();
   return 0;
}

출력 결과

0x601180 0x601184 0x601188 0x60118c 0x601190

위 프로그램에서는,ret();함수를 생성하고 배열을 반환합니다. 정적 int 타입 배열을 선언하고 할당된 메모리 블록의 주소를 출력합니다.

int * ret() {
   static int x[3];
   for(int i=0 ; i<5 ; i++) {
      cout << " " << &x[i];
   }
   return x;
}

에서main();함수에서, 이 함수ret();불리는-

ret();
SQL 가이드