«pointers» 태그된 질문

메모리에 저장된 다른 값을 "가리키는"데이터 유형. 포인터 변수는 다른 엔티티 (변수 또는 함수 또는 다른 엔티티)의 메모리 주소를 포함합니다. 이 태그는 참조가 아닌 포인터 사용과 관련된 질문에 사용해야합니다. 포인터를 사용하는 가장 일반적인 프로그래밍 언어는 C, C ++, Go 및 어셈블리 언어입니다. 특정 언어 태그를 사용하십시오. 다른 유용한 태그로는 포인터 사용을 설명하는 메소드, 함수, 구조체 등이 있습니다.

12
포인터 대 참조
함수에 원래 변수를 제공 할 때 더 나은 방법은 무엇입니까? unsigned long x = 4; void func1(unsigned long& val) { val = 5; } func1(x); 또는: void func2(unsigned long* val) { *val = 5; } func2(&x); IOW : 다른 것을 골라야 할 이유가 있습니까?


7
C ++에서 객체를 함수에 전달하는 방법은 무엇입니까?
저는 C ++ 프로그래밍을 처음 사용하지만 Java에 경험이 있습니다. C ++에서 객체를 함수에 전달하는 방법에 대한 지침이 필요합니다. 포인터, 참조 또는 비 포인터 및 비 참조 값을 전달해야합니까? Java에서는 객체에 대한 참조를 보유하는 변수 만 전달하기 때문에 그러한 문제가 없음을 기억합니다. 각 옵션을 사용할 위치를 설명 할 수 있다면 좋을 …

7
size_t 대 uintptr_t
C 표준 size_t은 모든 배열 색인을 보유 할 수있는 유형임을 보증합니다 . 즉, 논리적으로 size_t모든 포인터 유형을 보유 할 수 있어야합니다. Google에서 찾은 일부 사이트에서 이것이 합법적이며 항상 작동해야한다는 것을 읽었습니다. void *v = malloc(10); size_t s = (size_t) v; 따라서 C99에서 표준은 intptr_t및 uintptr_t유형을 도입했으며 서명 된 유형과 서명되지 …
246 c  pointers  size-t 

14
클래스 데이터 멤버“:: *”의 포인터
컴파일이 이상한 코드 스 니펫을 발견했습니다. class Car { public: int speed; }; int main() { int Car::*pSpeed = &Car::speed; return 0; } 왜 C ++이 클래스의 비 정적 데이터 멤버에 대한이 포인터를 가지고 있습니까? 실제 코드에서이 이상한 포인터를 사용하는 것은 무엇입니까 ?
243 c++  class  pointers  c++-faq 

4
언제 어떤 종류의 포인터를 사용합니까?
좋아, 내가 생계를 위해 C ++을 마지막으로 썼을 std::auto_ptr때 std lib가 사용 가능한 boost::shared_ptr모든 것이었고 모든 분노였습니다. 나는 다른 스마트 포인터 유형 부스트를 실제로 보지 않았다. C ++ 11은 현재 일부 유형의 부스트가 제공되었지만 모든 유형을 제공하지는 않습니다. 그렇다면 어떤 스마트 포인터를 언제 사용할지 결정하는 간단한 알고리즘이 있습니까? 벙어리 포인터 …


7
C ++에서 포인터를 지나서 참조로 전달하면 이점이 있습니까?
C ++에서 참조로 전달하는 것보다 포인터로 전달하는 것의 이점은 무엇입니까? 최근에 참조로 전달하는 대신 포인터로 함수 인수를 전달하도록 선택한 많은 예제를 보았습니다. 이렇게하면 이점이 있습니까? 예: func(SPRITE *x); 의 전화로 func(&mySprite); vs. func(SPRITE &x); 의 전화로 func(mySprite);

8
C에서 char 배열과 char 포인터의 차이점은 무엇입니까?
C의 포인터를 이해하려고 노력하고 있지만 현재 다음과 혼동됩니다. char *p = "hello" 이것은 h 에서 시작하여 문자 배열을 가리키는 문자 포인터 입니다. char p[] = "hello" hello 를 저장하는 배열입니다 . 이 두 변수를이 함수에 전달할 때의 차이점은 무엇입니까? void printSomething(char *p) { printf("p: %s",p); }
216 c  arrays  pointers 

17
함수에서 배열을 반환
int arr[5]함수에 전달 되는 배열 이 있습니다 fillarr(int arr[]). int fillarr(int arr[]) { for(...); return arr; } 해당 배열을 어떻게 반환합니까? 어떻게 사용합니까? 포인터에 어떻게 액세스 할 수 있습니까?

25
메모리 주소가 아닌 경우 C 포인터는 정확히 무엇입니까?
C에 대한 평판이 좋은 소스에서 &운영자를 논의한 후 다음 정보가 제공됩니다 . ... 주소가 무엇인지 모르는 사람들과 혼동하기 때문에 용어 [주소] 가 남아 있다는 것은 불행한 일입니다 . . 내가 읽은 다른 자료 (동일하게 평판 좋은 출처에서)는 항상 포인터와 &연산자를 메모리 주소를 제공 한다고 언급했습니다 . 나는 그 문제의 실제 …

17
C에서 참조로 전달
C가 참조로 변수 전달을 지원하지 않으면 왜 작동합니까? #include <stdio.h> void f(int *j) { (*j)++; } int main() { int i = 20; int *p = &i; f(p); printf("i = %d\n", i); return 0; } 산출: $ gcc -std=c99 test.c $ a.exe i = 21



3
X는 Y를 구현하지 않습니다 (… 메소드에 포인터 수신기가 있습니다).
폐쇄되었습니다 . 이 질문에는 세부 사항이나 명확성 이 필요 합니다 . 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 세부 사항을 추가하고 문제점을 명확하게하십시오 . 휴일 2 개월 전 . 이 질문을 개선하십시오 이 " X는 Y를 구현하지 않습니다 (... 메소드에는 포인터 수신기가 있습니다 " ) …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.