Notes on pointer in C

  • A pointer is a memory address.
  • Assume size of int and char in the compiler as 4 and 1 Byte respectively.
  • & : address of
  • * : Content of (de-referencing operator)
  • int x; //x occupies 4 byte memory
  • int *p; //p is a pointer and address of an integer. It means *p (content of p) will be an integer.
  • p= &x; //now, p is address of x. p is pointer to integer x.
  • p++; //move pointer to next element. As p is the pointer to integer, it's value will increase by 4.
  • int **q; // q is pointer to pointer. (address of address)
  • q=&p; //q is now pointer to pointer to (address of) p.
  • Size of a pointer is fixed for a compiler irrespective of pointer type. 
  • p=(char*)p; //now p is address of char, content of p (*p) will be of size 1 Byte.

I recommend to go through this test for checking yourself : https://www.geeksforgeeks.org/c-language-2-gq/pointers-gq/

Comments

Popular posts from this blog

Physical Significance of Convolution

Convolutional Neural Network