GATE CSE
First time here? Checkout the FAQ!
x
0 votes
71 views
#include<Stdio.h>
main()
{
    int *a[10];
    *a[0]=323;
  printf("%d",*a);

}

// i m getting error what is error here ?
asked in Programming by Active (1.9k points)   | 71 views

yes i think u r right 
it is right if elements r contiguous
suppose each element of array of pointers pointing to each element of an array then it may right bt nt ever as in ur case 
srry if any problem occur due 2 me...
https://www.tutorialspoint.com/cprogramming/c_array_of_pointers.htm

my question is modification of that question :)

valid code is this

int main(void) {
	int *a[10];
    a[0]=323;
    printf("%d",a[0]);
	return 0;
}

 

srestha  tell , below description is right ?

can u write full formula with means

e.g. int *a[10];

a element  1000 1200 1300 1400 1500 1600 1700 1800

a index       0        1       2    3       4       5      6       7

memory    100     102    104  106  108  110    112   114

location

no how to calculate a[2][1] ?

according to u it will  *(*(a+2)+1) =

first i will solve inner part a+2 which wil 100+2 * size of type (here int , so 2 )

a+2 leads to 100+4 = 104

*104 leads 1300

so *(1300 + 1) which leads 1300 + 2 = 1302

vaue at 1302 which leads here error //bcz there is no element at memory location

is thiz whole scenario is right ?

Please log in or register to answer this question.

Related questions

0 votes
1 answer
2
asked ago in Algorithms by Wanted Active (1.9k points)   | 41 views
+1 vote
1 answer
3
asked in Programming by Akhil01 (319 points)   | 32 views
Top Users Jan 2017
  1. Debashish Deka

    9872 Points

  2. sudsho

    5596 Points

  3. Habibkhan

    5498 Points

  4. Bikram

    5350 Points

  5. Vijay Thakur

    4508 Points

  6. Arjun

    4458 Points

  7. Sushant Gokhale

    4410 Points

  8. saurabh rai

    4236 Points

  9. santhoshdevulapally

    3906 Points

  10. Kapil

    3892 Points

Monthly Topper: Rs. 500 gift card

19,481 questions
24,261 answers
54,211 comments
20,405 users