Common Mistakes in C : Pointer Errors

January 15, 2025 2 Comments » Hits : 19






Common Mistakes / Errors while using Pointer in C Programming


1 . Assigning Value to Pointer Variable

      int * ptr , m = 100 ;
      ptr = m ;                 // Error on This Line

Correction :

  • ptr is pointer variable
  • “ptr” contain the address of the variable of type ‘int’
  • We are assigning value of variable to the pointer variable, instead of address
  • In order to resolve this problem we should assign address of variable to pointer variable

Write it like this -

    ptr = &m ;

2 .Assigning Value to Uninitialized Pointer

      int * ptr , m = 100 ;
      *ptr = m ;                 // Error on This Line
  • “ptr” is pointer variable.
  • “*ptr” means “value stored at address ptr“.
  • We are going to update the value stored at address pointed by uninitialized pointer variable.

Instead write it as -

      int * ptr , m = 100 ,n = 20;
      ptr = &n;
      *ptr = m ;
  • Firstly Initialize pointer by assigning the address of integer to Pointer variable.
  • After initializing pointer we can update value.”.

3 .Not Dereferencing Pointer Variable

      int * ptr , m = 100 ;
      ptr =  &m ;
      printf("%d",ptr);     // Error on this Line

4. Assigning Address of Un-initialized Variable

      int *ptr,m;
      ptr = &m;     // Error on this Line

5. Comparing Pointers that point to different objects

      char str1[10],str2[10];
      char *ptr1 = str1;
      char *ptr2 = str2;
      if(ptr1>ptr2)  .....                  // Error Here

2 Comments

  1. Anonymous April 18, 2025 at 8:48 pm - Reply

    good work! could have been better if you posted the corrections too.

  2. Priteh Taral July 14, 2024 at 2:40 am - Reply

    I will post corrections soon..

Leave A Response