EDUCBA

EDUCBA

MENUMENU
  • Free Tutorials
  • Free Courses
  • Certification Courses
  • 600+ Courses All in One Bundle
  • Login

Address Operator in C

Home » Software Development » Software Development Tutorials » C Programming Tutorial » Address Operator in C

Address Operator in C

Introduction to Address Operator in C

The Address Operator in C also called a pointer. This address operator is denoted by “&”. This & symbol is called an ampersand. This & is used in a unary operator. The purpose of this address operator or pointer is used to return the address of the variable. Once we declared a pointer variable, we have to initialize the pointer with a valid memory address; to get the memory address of the variable ampersand is used. When we use the ampersand symbol as a prefix to the variable name & and it gives the address of that variable. An address of the operator is used within C that is returned to the memory address of a variable. These addresses returned by the address of the operator are known as pointers because they “point” to the variable in memory.

Usage:

Start Your Free Software Development Course

Web development, programming languages, Software testing & others

  1. While scanning the user input we used ampersand operator.
  2. While displaying the address of the variable we used ampersand operator.

Why Address Operator used in C?

Address operators commonly used for 2 purposes:

  1. Conduct parameter passing by reference such as name.
  2. Establish pointer values and address of operator’s point to the memory location because the value of the pointer is the memory location or memory address. The data item saved in memory.

Real-time Example

  • If the user is trying to locate the name “paramesh” within the data and the string variable named as name and it will look like char[]=”paramesh”. Then the address operator is used to know the location or the address of the data using the “name” variable.

How does Address Operator work in C?

The address operator is working for returns the memory address of a variable. These addresses are returned by the address of the operator are known as pointers because they point to the variable in memory.

Scanning the user input

Code:                                             

scanf("%d",&variable_name); //stores the value of the variable

Displaying the address of the variable

Code:

int a=10;
int address=&a;

Examples to Implement Address Operator in C

Below are the examples mentioned:

Example #1

Scanning user integer input and display with the ampersand

Code:

//include is used to add basic C libraries
#include <stdio.h>
//main method is used to run C application
int main(void)
{
//declaring 2 variables
int first_number, second_number;
//Asking user to enter integer input
printf("Please enter any 2 integer number \n");
//store the number with ampersand symbol
scanf("%d\n%d",&first_number,&second_number);
//displaying output to the end user
printf("User enter numbers %d and %d ", first_number, second_number);
return 0;
}

Output:

Integer Input

Example #2

Scanning user String input and display with the ampersand

Code:

//include is used to add basic C libraries
#include <stdio.h>
//main method is used to run C application
int main(void)
{
//declaring 2 variables
char first_name[30],last_name[20];
//Asking user to enter input
printf("Please enter your first name = ");
//Store the first_name in ampersand symbol
scanf("%s",&first_name);
//Asking user to enter input
printf("Please enter your last name = ");
//Store the first_name in ampersand symbol
scanf("%s",&last_name);
//displaying output to the end user
printf("Your name is %s %s ", first_name,last_name);
return 0;
}

Output:

String Input

Example #3

Address of the String input names

Code:

//include is used to add basic C libraries
#include <stdio.h>
//main method is used to run C application
int main(void)
{
//declaring 2 variables
char first_name[30],last_name[20];
//Asking user to enter input
printf("Please enter your first name = ");
//Store the first_name in ampersand symbol
scanf("%s",&first_name);
//assigning first_name address to a variable
int a=&first_name;
//Asking user to enter input
printf("Please enter your last name = ");
//Store the first_name in ampersand symbol
scanf("%s",&last_name);
//assigning first_name address to a variable
int b=&last_name;
//displaying output to the end user
//As it is address output may vary from compiler to compiler
printf("Address of Your name is %x %x ", a,a);
return 0;
}

Popular Course in this category
C Programming Training (3 Courses, 5 Project)3 Online Courses | 5 Hands-on Projects | 34+ Hours | Verifiable Certificate of Completion | Lifetime Access
4.5 (5,570 ratings)
Course Price

View Course

Related Courses
C++ Training (4 Courses, 5 Projects, 4 Quizzes)Java Training (40 Courses, 29 Projects, 4 Quizzes)

Output:

address operator in c3

Example #4

Address of the address

Code:

//include is used to add basic C libraries
#include <stdio.h>
//main method is used to run C application
int main(void)
{
//declaring 3 variables
int *x;
int **y;
int input;
//Asking user to enter input
printf("Please enter a number = ");
//Store the first_name in ampersand symbol
scanf("%d",&input);
//take the address of the input into the x single pointer
x=&input;
//take the address of the x into the y double pointer, it will give the address of the address
y=&input;
//displaying output to the end user
//As it is address output may vary from compiler to compiler
printf("Value of input is %d \n",input);
printf("Address of *x is %x\n", &x);
printf("Address of **x is %x", &y);
return 0;
}

Output:

address operator in c4

Conclusion

Address operator is used to storing the address of the variable in C. This is denoted by an ampersand (&). This is also used for scanning the user input.

Recommended Articles

This is a guide to Address Operator in C. Here we discuss the introduction to Address Operator in C, why it is used and how does it work with examples. You can also go through our other related articles to learn more –

  1. C Operators
  2. Conditional Operator in C
  3. Arithmetic Operators in C
  4. Conditional Operator in Java

C Programming Training (3 Courses, 5 Project)

3 Online Courses

5 Hands-on Projects

34+ Hours

Verifiable Certificate of Completion

Lifetime Access

Learn More

0 Shares
Share
Tweet
Share
Primary Sidebar
C Programming Tutorial
  • Operators
    • C Operators
    • Arithmetic Operators in C
    • Relational Operators in C
    • Assignment Operators in C
    • Logical Operators in C
    • Conditional Operator in C
    • Modulus Operator in C
    • Ternary Operator in C
    • Address Operator in C
    • Unary Operator in C
    • Operators Precedence in C
    • Left Shift Operator in C
  • Basic
    • Introduction to C
    • What is C
    • Career in C Programming
    • Advantages of C
    • How to Install C
    • Best C Compilers
    • Data Types in C
    • Variables in C
    • C Keywords
    • C Command
    • Command Line Arguments in C
    • C Literals
    • Constants in C
    • Unsigned Int in C
    • String in C
  • Pointers
    • Pointers in C
    • Null pointer in C
    • Function Pointer in C
    • Double Pointer in C
    • Void Pointer in C
    • Const Pointer in C
    • Dangling Pointers in C
    • Pointer Arithmetic in C
  • Control Statement
    • Control Statements in C
    • If Statement in C
    • If-else Statement in C
    • Else if Statement in C
    • Nested if Statement in C
    • #else in C
    • Structure Padding in C
    • Nested Structure in C
    • Continue Statement in C
    • Break Statement in C
    • Switch Statement in C
    • Goto Statement in C
  • Loops
    • Loops in C
    • For Loop in C
    • While Loop in C
    • Do While Loop in C
    • Nested Loop in C
    • Infinite Loop in C 
  • Function
    • Math Functions in C
    • Hashing Function in C
    • Recursive Function in C
    • Power Function in C
    • fputs in C
    • C puts() Function
    • fprintf() in C
    • fseek() in C
    • Stderr in C
    • ASCII Value in C
    • strcat() in C
    • Inline Function in C
    • sizeof() in C
    • Function Prototype in C
    • C ftell()
  • Array
    • Arrays in C Programming
    • 2-D Arrays in C
    • 3D Arrays in C
    • Multidimensional Array in C
    • Array Functions in C
    • Strings Array in C
  • Sorting
    • Sorting in C
    • Heap Sort in C
  • Advanced
    • Constructor in C
    • Encapsulation in C
    • C Storage Classes
    • Static Keyword in C
    • File Handling in C
    • Queue in C
    • Hexadecimal in C 
    • typedef in C
    • Memory Allocation in C
    • Linked List in C
    • Volatile in C
    • Tokens in C
    • Expression in C
    • Regular Expression in C
    • Error Handling in C
    • Types of Errors in C
    • Preprocessor in C
    • Preprocessor Directives in C
    • fscanf() in C
    • #Pragma in C
    • #ifndef in C
    • #undef in C
    • Macros in C
  • C programs
    • Patterns in C Programming
    • Star Patterns in C
    • Number Patterns in C
    • Swapping in C
    • Reverse Number in C
    • Palindrome in C Program
    • Factorial in C
    • Fibonacci Series in C
    • Square Root in C
    • Random Number Generator in C
    • Prime Numbers in C
    • Escape Sequence in C
    • Reverse String in C
    • Leap Year Program in C
    • Anagram Program in C
    • Strong Number in C
    • String Concatenation in C
    • C Programming Matrix Multiplication
    • Decimal to Octal in C
    • Expression Evaluation in C
    • Decimal to Hexadecimal in C
  • Interview question
    • C Programming Interview Questions

Related Courses

C Programming Training Course

C++ Training Course

Java Training Course

Footer
About Us
  • Blog
  • Who is EDUCBA?
  • Sign Up
  • Corporate Training
  • Certificate from Top Institutions
  • Contact Us
  • Verifiable Certificate
  • Reviews
  • Terms and Conditions
  • Privacy Policy
  •  
Apps
  • iPhone & iPad
  • Android
Resources
  • Free Courses
  • Java Tutorials
  • Python Tutorials
  • All Tutorials
Certification Courses
  • All Courses
  • Software Development Course - All in One Bundle
  • Become a Python Developer
  • Java Course
  • Become a Selenium Automation Tester
  • Become an IoT Developer
  • ASP.NET Course
  • VB.NET Course
  • PHP Course

© 2020 - EDUCBA. ALL RIGHTS RESERVED. THE CERTIFICATION NAMES ARE THE TRADEMARKS OF THEIR RESPECTIVE OWNERS.

EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you
Book Your One Instructor : One Learner Free Class

Let’s Get Started

This website or its third-party tools use cookies, which are necessary to its functioning and required to achieve the purposes illustrated in the cookie policy. By closing this banner, scrolling this page, clicking a link or continuing to browse otherwise, you agree to our Privacy Policy

EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you
EDUCBA Login

Forgot Password?

EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you

Special Offer - C Programming Training (3 Courses, 5 Project) Learn More