C 프로그래밍에서 *와 & 연산자의 차이점은 무엇입니까

C Peulogeulaeming Eseo Wa Yeonsanjaui Chaijeom Eun Mueos Ibnikka



연산자는 변수에 대한 작업을 수행하는 데 사용되며 프로그래머가 수학, 관계 및 논리 형식과 같은 작업을 수행하는 데 매우 유용합니다. C 언어에는 단일 부호 연산자의 도움으로 특정 작업을 수행하는 데 사용되는 다양한 종류의 내장 함수가 있습니다.

이 가이드라인에서 우리는 * 그리고 & C 프로그래밍의 연산자.

* C의 연산자

그만큼 * 연산자는 포인터 값을 검색하는 데 사용되는 C 프로그래밍 언어에서 널리 사용되는 연산자 중 하나입니다. 또한 * 연산자를 역참조 연산자로 지정합니다. 이 연산자를 사용하면 주소 포인터의 도움을 받아 메모리에 저장된 데이터에 쉽게 액세스할 수 있습니다. 프로그램에서 사용하는 경우 주소 포인터에 저장된 값을 쉽게 검색할 수 있도록 주소를 가리키는 포인터를 초기화해야 합니다.







& C의 연산자

& 반면 연산자는 메모리 위치에서 피연산자의 주소를 반환하는 데 사용됩니다. & 연산자로 인해 메모리 위치에서 참조되는 변수의 주소를 쉽게 얻을 수 있습니다. 모든 종류의 데이터 유형의 변수 주소를 보려면 & 연산자 기호로 변수 이름을 지정해야 합니다.



다음은 다음을 사용하는 C 프로그램의 몇 가지 예입니다. * 운영자, & 연산자와 둘의 조합.



예제 1: 프로그램 사용 (*) 연산자

#include

정수 기본 ( ) {
정수 = 5 ;
정수 * = & ;
printf ( 'A의 값은 %d입니다. \N ' , * ) ;
반품 0 ;
}

코드는 변수를 초기화합니다. 값이 5이면 메모리의 어떤 주소를 갖도록 포인터형 변수를 선언하고 printf 함수에서 주소의 값을 보여줍니다. 5입니다.





산출



예 2: 프로그램에서 (&) 연산자 사용

#include

정수 기본 ( )
{
정수 var1 = 1000 ;
정수 var2 ;
var2 = & var1 ;
printf ( ' var2의 메모리 위치 주소는 %i입니다.' var2 ) ;
반품 0 ;
}

위의 코드에서 먼저 정수 변수가 있습니다. var1 값이 1000입니다. 또 다른 변수가 있습니다. var2 변수의 주소를 취하는 var1 . 주소는 다음을 사용하여 인쇄됩니다. %나 형식 지정자.

산출

예제 3: & 및 * 연산자를 모두 사용하는 프로그램

#include
정수 기본 ( ) {
정수 아아 = 5 , bb ;
정수 * PP ;
PP = & 아아 ;
bb = * PP ;
printf ( '-----aa의 주소는 0x%x입니다. \N -----' , & 아아 ) ;
printf ( '------bb의 주소는 0x%x입니다. \N -----' , & bb ) ;
printf ( '-----pp의 값은 0x%x입니다. \N -----' ,pp ) ;
printf ( '---------이제 aa의 값은 %d입니다. \N -----' , 아 ) ;
printf ( '-------*pp의 값은 %d입니다. \N -----' , * PP ) ;
printf ( '-----bb의 값: %d----' , bb ) ;
반품 0 ;
}

위의 C 코드에서는 두 개의 단순 정수 변수가 초기화되고 하나의 포인터 유형 변수 *pp가 초기화됩니다. 그런 다음 aa 주소를 pp에 할당하고 다시 bb 변수로 해당 값을 역참조합니다. 마지막에 printf 함수를 사용하여 모든 값을 인쇄합니다.

산출

결론

연산자는 프로그래밍 언어에서 매우 중요한 역할을 합니다. 이 기사에서는 단일 피연산자와만 작동하고 C 프로그래밍 언어에서 코드의 성능을 높이는 데 사용하는 두 연산자에 대해 설명했습니다. 둘 다 * 그리고 & 연산자는 의미와 기능을 다음과 같이 추론합니다. * '변수 값을 반환'하는 데 사용되는 반면 & '메모리 주소를 가져와 실행 시간에 값을 조작'하기 위한 것입니다.