C 언어 지침 깊이 이해

포인터 가 뭐 예요?
요약:바늘 은 변수 이 고 변수 안 은 주소 이 며 바늘 은 주소 입 니 다.(포인터 에 저 장 된 값 은 모두 주소 로 처 리 됩 니 다.
주:포인터 의 크기 는 32 비트 플랫폼 에서 4 개의 바이트 이 고 64 비트 플랫폼 에서 8 개의 바이트 입 니 다.
포인터 와 포인터 종류
앞의 지식 을 통 해 우 리 는 변수 가 서로 다른 유형 이 있다 는 것 을 알 수 있다.예 를 들 어 성형,부동 소수점 형 등 이다.
마찬가지 로 지침 도 유형 이 다르다.
**포인터 의 정의 방식:
변수 종류+*
예 를 들 면:
int * pi=NULL char * pc=NULL short * ps=NULL long *pl=NULL float *pf=NULL double *pd=NULL …
포인터 타 입의 의미?
포인터±정수

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
	int n = 10;
	char *pc = (char*)&n;
	int *pi = &n;
	printf("n=%p
", &n); printf("pc=%p
", pc); printf("pi=%p
", pi); printf("pc+1=%p
", pc + 1); printf("pi+1=%p
", pi + 1); return 0; }
요약:포인터 의 유형 은 포인터 가 앞으로 나 아가 거나 뒤로 얼마나 큰 지 를 결정 한다.
포인터 의 해 인용
포인터 연산
지침±정수
지침-지침
지침 의 관계 연산
주의:포인터 상쇄 전제,가리 키 는 주소 동일
포인터±정수

#define MAX 5
int arr[5];
int *p;
//  +-  
for(p=&arr[0] ;p<&a[MAX]; )
{
     *p++ =0;
} 
포인터.-포인터.

int my_strlen(char *s)//       
{
	char *p = s;
	while (*p != '\0')
		p++;
	return p - s;
} 
포인터 의 관계 연산

for (p = &arr[MAX]; p > &arr[0])
{
	*--p;
}
표준 규정:배열 요 소 를 가리 키 는 지침 과 배열 의 마지막 요 소 를 가리 키 는 메모리 위 치 를 가리 키 는 지침 을 비교 할 수 있 지만 첫 번 째 요 소 를 가리 키 기 전의 메모리 위 치 를 가리 키 는 지침 과 비교 할 수 없습니다.
총결산
이 글 은 여기까지 입 니 다.당신 에 게 도움 을 줄 수 있 기 를 바 랍 니 다.또한 당신 이 우리 의 더 많은 내용 에 관심 을 가 져 주 실 수 있 기 를 바 랍 니 다!

좋은 웹페이지 즐겨찾기