SlideShare a Scribd company logo
1 of 22
‘ *’  ,  ‘&’     Pointers In C
About me Sriram kumar . K III rd year CSE  Email - Sri2k42002@yahoo.co.in
What is a Pointer ?
X1000 X1004 X1008 X100c x1010 Who does a memory look like ? X1000 X1001 X1002 X1003   Address Locations
Operators used in Pointers  * & Address Dereferencing (Address of) (Value of)
Int i=3; Address of ‘i’ Value of ‘i’ X1000  x1004  x1008  x100c  x1010  x1014 variable i 3 (Value of i) Address of i ‘ &i’ ‘ *i’ The value ‘3’ is saved in the memory location ‘x100c’
Syntax for pointers (pointer type declaration) type *identifier ; Example  Char *cp ; Int *ip ; Double *dp ;
Pointer Assignment   Int i = 1 , *ip ;  //pointer declaration   ip = &i ;  //pointer assignment *ip = 3 ;  //pointer assignment
Pointer Arithmetic Lets take this example program #include<stdio.h> Void main() { Int a [5]={1,2,3,4,5} , b , *pt ; pt = &a[0]; pt = pt + 4 ; b=a[0] ;  b+=4 ; } a[0] X1000  x1004  x1008  x100c  x1010 X1000  x1004  x1008  x100c  x1010 a[2] a[1] a[4] a[3] a[0] a[2] a[1] a[4] a[3] b b = 1  b=1+4  b= 5 pt
Lets Take an Example and See how pointers work #include<stdio.h> Void main() { Int i=3; Int *j; j=&i; Printf(“i=%d”i); Printf(“*j=%d”*j); }
X1000  x1004  x1008  x100c  x1010  x1014 3 Memory variables Int i Int *j Int i=3; Int *j; j = &i; x100c Create an integer variable ‘i’ and initialize it to 3 Create a pointer variable ‘j’- create  value of ‘j’ Initialize the pointer  value of ‘j’  to the  address of ‘i’
X1000  x1004  x1008  x100c  x1010  x1014 Memory variables Int i Int *j Output screen Printf(“i=%d” i); We know j=&i So    *j=*(&i) value of (address of i) (i.e.) value in address (x100c) Printf(“i=%d” i); i=3 *j=3 Printf(“*j=%d” *j); Printf(“*j=%d” *j); x100c 3 3
Void main() { int num=10; int* pnum=NULL; pnum = &num; *pnum += 20; printf(&quot;Number = %d&quot;, num); printf(&quot;Pointer Number = %d&quot;, *pnum); } Predict the output of this code
Number = 10 Pointer Number = 30
int a[10] = {1,2,3,4,5,6,7,8,9,12} ,*p, *q , i; p = &a[2]; q = &a[5]; i = *q - *p;  Printf(“The value of i is %d” i ); i = *p - *q;  Printf(“The value of i is %d” i ); a[2] = a[5] = 0; Printf(“The value of i is %d” i ); Work to your Brain
The value of i is 3 The value of i is -3 The value of i is 0
int a[10] = { 2,3,4,5,6,7,8,9,1,0 }, *p, *q; p = &a[2]; q = p + 3;  p = q – 1;  p+ + ;  Printf(“The value of p and q are : %d , %d” *p,*q); Work to your Brain
The value of p and q are : 7 , 7
int main() { int x[2]={1,2},y[2]={3,4}; int small,big; small=&x[0]; big=&y[0]; min_max(&small,&big); printf(“small%d big%d&quot;,*small,*big); return 0; } min_max(int *a,int *b) { a++; b++; return (*a,*b); } Work to your Brain
Small 2 big 4
 
 

More Related Content

What's hot (20)

Type conversion
Type conversionType conversion
Type conversion
 
Passing an Array to a Function (ICT Programming)
Passing an Array to a Function (ICT Programming)Passing an Array to a Function (ICT Programming)
Passing an Array to a Function (ICT Programming)
 
Pointers C programming
Pointers  C programmingPointers  C programming
Pointers C programming
 
Function in C program
Function in C programFunction in C program
Function in C program
 
Pointers in c++
Pointers in c++Pointers in c++
Pointers in c++
 
Pointer in C
Pointer in CPointer in C
Pointer in C
 
Pointers in C Programming
Pointers in C ProgrammingPointers in C Programming
Pointers in C Programming
 
Pointer in c
Pointer in cPointer in c
Pointer in c
 
Pointer in c program
Pointer in c programPointer in c program
Pointer in c program
 
Pointers in C/C++ Programming
Pointers in C/C++ ProgrammingPointers in C/C++ Programming
Pointers in C/C++ Programming
 
Pointers in c language
Pointers in c languagePointers in c language
Pointers in c language
 
Type casting in c programming
Type casting in c programmingType casting in c programming
Type casting in c programming
 
Parameter passing to_functions_in_c
Parameter passing to_functions_in_cParameter passing to_functions_in_c
Parameter passing to_functions_in_c
 
Exception handling c++
Exception handling c++Exception handling c++
Exception handling c++
 
string in C
string in Cstring in C
string in C
 
functions of C++
functions of C++functions of C++
functions of C++
 
Pointers in C
Pointers in CPointers in C
Pointers in C
 
Pointer in C++
Pointer in C++Pointer in C++
Pointer in C++
 
Structures in c language
Structures in c languageStructures in c language
Structures in c language
 
Pointers in C
Pointers in CPointers in C
Pointers in C
 

Similar to Pointers in C

Unit-I Pointer Data structure.pptx
Unit-I Pointer Data structure.pptxUnit-I Pointer Data structure.pptx
Unit-I Pointer Data structure.pptxajajkhan16
 
9. pointer, pointer & function
9. pointer, pointer & function9. pointer, pointer & function
9. pointer, pointer & function웅식 전
 
Pointers in C Language
Pointers in C LanguagePointers in C Language
Pointers in C Languagemadan reddy
 
booksoncprogramminglanguage-anintroductiontobeginnersbyarunumrao4-21101016591...
booksoncprogramminglanguage-anintroductiontobeginnersbyarunumrao4-21101016591...booksoncprogramminglanguage-anintroductiontobeginnersbyarunumrao4-21101016591...
booksoncprogramminglanguage-anintroductiontobeginnersbyarunumrao4-21101016591...GkhanGirgin3
 
Notes for C Programming for MCA, BCA, B. Tech CSE, ECE and MSC (CS) 4 of 5 by...
Notes for C Programming for MCA, BCA, B. Tech CSE, ECE and MSC (CS) 4 of 5 by...Notes for C Programming for MCA, BCA, B. Tech CSE, ECE and MSC (CS) 4 of 5 by...
Notes for C Programming for MCA, BCA, B. Tech CSE, ECE and MSC (CS) 4 of 5 by...ssuserd6b1fd
 
Ch6 pointers (latest)
Ch6 pointers (latest)Ch6 pointers (latest)
Ch6 pointers (latest)Hattori Sidek
 
detailed information about Pointers in c language
detailed information about Pointers in c languagedetailed information about Pointers in c language
detailed information about Pointers in c languagegourav kottawar
 
10. array & pointer
10. array & pointer10. array & pointer
10. array & pointer웅식 전
 

Similar to Pointers in C (20)

Pointers in c
Pointers in cPointers in c
Pointers in c
 
Pointer in C
Pointer in CPointer in C
Pointer in C
 
c programming
c programmingc programming
c programming
 
pointers 1
pointers 1pointers 1
pointers 1
 
Unit-I Pointer Data structure.pptx
Unit-I Pointer Data structure.pptxUnit-I Pointer Data structure.pptx
Unit-I Pointer Data structure.pptx
 
9. pointer, pointer & function
9. pointer, pointer & function9. pointer, pointer & function
9. pointer, pointer & function
 
Chapter5.pptx
Chapter5.pptxChapter5.pptx
Chapter5.pptx
 
Pointers in C Language
Pointers in C LanguagePointers in C Language
Pointers in C Language
 
Pointers
PointersPointers
Pointers
 
booksoncprogramminglanguage-anintroductiontobeginnersbyarunumrao4-21101016591...
booksoncprogramminglanguage-anintroductiontobeginnersbyarunumrao4-21101016591...booksoncprogramminglanguage-anintroductiontobeginnersbyarunumrao4-21101016591...
booksoncprogramminglanguage-anintroductiontobeginnersbyarunumrao4-21101016591...
 
Notes for C Programming for MCA, BCA, B. Tech CSE, ECE and MSC (CS) 4 of 5 by...
Notes for C Programming for MCA, BCA, B. Tech CSE, ECE and MSC (CS) 4 of 5 by...Notes for C Programming for MCA, BCA, B. Tech CSE, ECE and MSC (CS) 4 of 5 by...
Notes for C Programming for MCA, BCA, B. Tech CSE, ECE and MSC (CS) 4 of 5 by...
 
Pointers
PointersPointers
Pointers
 
Ch6 pointers (latest)
Ch6 pointers (latest)Ch6 pointers (latest)
Ch6 pointers (latest)
 
CSE240 Pointers
CSE240 PointersCSE240 Pointers
CSE240 Pointers
 
Ch 7-pointers
Ch 7-pointersCh 7-pointers
Ch 7-pointers
 
detailed information about Pointers in c language
detailed information about Pointers in c languagedetailed information about Pointers in c language
detailed information about Pointers in c language
 
10. array & pointer
10. array & pointer10. array & pointer
10. array & pointer
 
Pointers+(2)
Pointers+(2)Pointers+(2)
Pointers+(2)
 
Pointer
PointerPointer
Pointer
 
4 Pointers.pptx
4 Pointers.pptx4 Pointers.pptx
4 Pointers.pptx
 

Recently uploaded

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 

Recently uploaded (20)

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 

Pointers in C

  • 1. ‘ *’ , ‘&’  Pointers In C
  • 2. About me Sriram kumar . K III rd year CSE Email - Sri2k42002@yahoo.co.in
  • 3. What is a Pointer ?
  • 4. X1000 X1004 X1008 X100c x1010 Who does a memory look like ? X1000 X1001 X1002 X1003 Address Locations
  • 5. Operators used in Pointers * & Address Dereferencing (Address of) (Value of)
  • 6. Int i=3; Address of ‘i’ Value of ‘i’ X1000 x1004 x1008 x100c x1010 x1014 variable i 3 (Value of i) Address of i ‘ &i’ ‘ *i’ The value ‘3’ is saved in the memory location ‘x100c’
  • 7. Syntax for pointers (pointer type declaration) type *identifier ; Example Char *cp ; Int *ip ; Double *dp ;
  • 8. Pointer Assignment Int i = 1 , *ip ; //pointer declaration ip = &i ; //pointer assignment *ip = 3 ; //pointer assignment
  • 9. Pointer Arithmetic Lets take this example program #include<stdio.h> Void main() { Int a [5]={1,2,3,4,5} , b , *pt ; pt = &a[0]; pt = pt + 4 ; b=a[0] ; b+=4 ; } a[0] X1000 x1004 x1008 x100c x1010 X1000 x1004 x1008 x100c x1010 a[2] a[1] a[4] a[3] a[0] a[2] a[1] a[4] a[3] b b = 1 b=1+4 b= 5 pt
  • 10. Lets Take an Example and See how pointers work #include<stdio.h> Void main() { Int i=3; Int *j; j=&i; Printf(“i=%d”i); Printf(“*j=%d”*j); }
  • 11. X1000 x1004 x1008 x100c x1010 x1014 3 Memory variables Int i Int *j Int i=3; Int *j; j = &i; x100c Create an integer variable ‘i’ and initialize it to 3 Create a pointer variable ‘j’- create value of ‘j’ Initialize the pointer value of ‘j’ to the address of ‘i’
  • 12. X1000 x1004 x1008 x100c x1010 x1014 Memory variables Int i Int *j Output screen Printf(“i=%d” i); We know j=&i So  *j=*(&i) value of (address of i) (i.e.) value in address (x100c) Printf(“i=%d” i); i=3 *j=3 Printf(“*j=%d” *j); Printf(“*j=%d” *j); x100c 3 3
  • 13. Void main() { int num=10; int* pnum=NULL; pnum = &num; *pnum += 20; printf(&quot;Number = %d&quot;, num); printf(&quot;Pointer Number = %d&quot;, *pnum); } Predict the output of this code
  • 14. Number = 10 Pointer Number = 30
  • 15. int a[10] = {1,2,3,4,5,6,7,8,9,12} ,*p, *q , i; p = &a[2]; q = &a[5]; i = *q - *p; Printf(“The value of i is %d” i ); i = *p - *q; Printf(“The value of i is %d” i ); a[2] = a[5] = 0; Printf(“The value of i is %d” i ); Work to your Brain
  • 16. The value of i is 3 The value of i is -3 The value of i is 0
  • 17. int a[10] = { 2,3,4,5,6,7,8,9,1,0 }, *p, *q; p = &a[2]; q = p + 3; p = q – 1; p+ + ; Printf(“The value of p and q are : %d , %d” *p,*q); Work to your Brain
  • 18. The value of p and q are : 7 , 7
  • 19. int main() { int x[2]={1,2},y[2]={3,4}; int small,big; small=&x[0]; big=&y[0]; min_max(&small,&big); printf(“small%d big%d&quot;,*small,*big); return 0; } min_max(int *a,int *b) { a++; b++; return (*a,*b); } Work to your Brain
  • 21.  
  • 22.