Search code examples
cpointersturbo-c

How pointer variable works, without initialising it in the code in TurboC++?


I am new to C. I was just interested in making a program which takes two integer input from the user and add it but the condition is that i have to use only one variable. I came up with this code:

#include <stdio.h>
int main()
{
int *a;
scanf("%d%d",a,(a+1));
printf("\nSum=%d",*a+*(a+1));
return 0;
}

scanf() function takes an valid address as an argument and i am passing the value in a(which is not initialised yet). So, how this code worked in Turbo C++?


Solution

  • You are trying to access an area that is not within the scope of the program. Luckily TCC gave it, but I believe if you go on experimenting, results will be undefined.

    You can do something like this to solve your problem of adding using 1 variable.

    int main()
    {
        int a;
        scanf("%d",&a); //scan the first number
        getchar();
        a += getchar()-'0'; // get the second number (restricted to 0-9)
        printf("%d",a);
        return 0;
    }