Skip to main content

How to Print Address in C Nitish Agarwal The Crazy Programmer

In this article, we will first look at how can we assign an address to a variable and then print the address using C language.

First of all, we will take a look at how addresses are assigned to any variable.

Whenever we declare a variable of any data type (int, float, double, char, etc.), some memory is allocated to the variable by the operating system which can be any random number but cannot be negative. This random number is called the address of that variable and every variable has a unique address.

To understand this concept in a more simple manner, let us take one real-life example. Suppose Rahul is a student of some university and lives in Hostel B, Room Number 32. Now, if someone asks me – Who lives in 32B? My prompt would be Rahul. Here, 32B is the address of a value named Rahul. Similar to this nature, addresses are assigned to variables in computer programs too.

There exist two methods to print the address of a variable in C :

  • Using address of (&), also called as ampersand operator.

  • Using pointers in C.

Method 1: Printing Address Using ‘address of’ Operator

To print any value in a program, C language uses the ‘printf’ function. The format to print output in C is given as – printf(“<format specifier>”, <variable to be printed>).

The address of a variable is an integer numeric quantity and the format specifier used to print such a quantity is “%p” (for printing address in hexadecimal form) and “%lld” (for printing address in decimal form). To print the address of a variable, we use ‘&’ along with the variable name.

Let us understand this with a sample program:

#include <stdio.h>

int main(){
        int num = 33 ;
        printf ( “%p”, &num ) ;
        printf(“\n”);
        printf ( “%lld”, &num ) ;
        return 0 ;
}

Output:

0x7ffe97f3e62c

140731447764524

In this program, our variable name is ‘num’. To print its address, the format specifier used here is ‘%p’ and ‘%lld’ and ‘&’ operator is used along with the name of the variable. The second print statement is used to insert a line break between the two outputs. Note that the output that gives the address of this variable is a randomly generated quantity. It can also take any other value than the one mentioned above.

Diagramatic representation of address of a variable using pointer notation.

Method 2: Printing Address Using Pointer

The address of a variable can also be printed using pointers in C. A pointer is an integer component that stores the address of another variable. To use a pointer, it must also be declared just like any other variable. A pointer in C is declared using the ‘*’ operator, also called the asterisk operator.

Pointer declaration – <datatype> *<variable_name>. Here, variable_name is used to store the address of the other variable.

Let us understand this with a sample program:

#include <stdio.h>

int main(){
        int num = 33 ;
        int *p ;
        p = &num ;
        printf ( “%lld”, p) ;
        return 0 ;
}

Output:

140731447764524

In this program, a pointer ‘p’ is initialized which stores the address of the variable ‘num’. As we have seen earlier, the ampersand operator is used to access the address of a variable, we use the ‘address of’ operator and store the variable’s address in ‘p’. Now, to print the address of the variable, we use the printf function along with the format specifier and the variable to be printed ( i.e., ‘p’ ).

Diagramatic representation of address of a variable using pointer notation.

In this way, we can make use of any of the two methods to print the address of a variable.

The post How to Print Address in C appeared first on The Crazy Programmer.



from The Crazy Programmer https://ift.tt/3w1K9UT

Comments

Popular posts from this blog

Difference between Web Designer and Web Developer Neeraj Mishra The Crazy Programmer

Have you ever wondered about the distinctions between web developers’ and web designers’ duties and obligations? You’re not alone! Many people have trouble distinguishing between these two. Although they collaborate to publish new websites on the internet, web developers and web designers play very different roles. To put these job possibilities into perspective, consider the construction of a house. To create a vision for the house, including the visual components, the space planning and layout, the materials, and the overall appearance and sense of the space, you need an architect. That said, to translate an idea into a building, you need construction professionals to take those architectural drawings and put them into practice. Image Source In a similar vein, web development and design work together to create websites. Let’s examine the major responsibilities and distinctions between web developers and web designers. Let’s get going, shall we? What Does a Web Designer Do?

A guide to data integration tools

CData Software is a leader in data access and connectivity solutions. It specializes in the development of data drivers and data access technologies for real-time access to online or on-premise applications, databases and web APIs. The company is focused on bringing data connectivity capabilities natively into tools organizations already use. It also features ETL/ELT solutions, enterprise connectors, and data visualization. Matillion ’s data transformation software empowers customers to extract data from a wide number of sources, load it into their chosen cloud data warehouse (CDW) and transform that data from its siloed source state, into analytics-ready insights – prepared for advanced analytics, machine learning, and artificial intelligence use cases. Only Matillion is purpose-built for Snowflake, Amazon Redshift, Google BigQuery, and Microsoft Azure, enabling businesses to achieve new levels of simplicity, speed, scale, and savings. Trusted by companies of all sizes to meet

2022: The year of hybrid work

Remote work was once considered a luxury to many, but in 2020, it became a necessity for a large portion of the workforce, as the scary and unknown COVID-19 virus sickened and even took the lives of so many people around the world.  Some workers were able to thrive in a remote setting, while others felt isolated and struggled to keep up a balance between their work and home lives. Last year saw the availability of life-saving vaccines, so companies were able to start having the conversation about what to do next. Should they keep everyone remote? Should they go back to working in the office full time? Or should they do something in between? Enter hybrid work, which offers a mix of the two. A Fall 2021 study conducted by Google revealed that over 75% of survey respondents expect hybrid work to become a standard practice within their organization within the next three years.  Thus, two years after the world abruptly shifted to widespread adoption of remote work, we are declaring 20