What is the real difference between arrays and pointers?
Answers were Sorted based on User's Feedback
Answer / guest
Arrays automatically allocate space which is fixed in size and
location; pointers are dynamic.
| Is This Answer Correct ? | 202 Yes | 25 No |
Answer / santosh
array is refered directly to the elements.
but in pointers we refers to address of the elements but not
elements . indirect calling of the elements.
| Is This Answer Correct ? | 155 Yes | 26 No |
Answer / pravinash
array is collection of similar datatype. it is a static
memory allocation means we can not increment and decrement
the arry size once we allocated. and we can not increment
the base address, reassign address.
pointer is a dynamic memory allocation. we can allocate the
size as we want, assigning into another variable and base
address incrementation is allowed.
| Is This Answer Correct ? | 72 Yes | 9 No |
Answer / jaroosh
Arrays are simply pointers THAT CANNOT be reassigned, ie,
constant pointers to some memory locations. They do not
"magically preserve" any information about array size or
whatever that some suggest, they are just a type of constant
pointers, nothing more.
For example , the following :
int a[] = {1,23};
a++;
will throw a compiler error, something like : a is not an
Lvalue, which means that you cannot assign or change the
value of a.
| Is This Answer Correct ? | 64 Yes | 14 No |
Answer / pushpanjali panda
Arrays automatically allocate space, but can't be relocated
or resized. Pointers must be explicitly assigned to point
to allocated space (perhaps using malloc), but can be
reassigned (i.e. pointed at different objects) at will, and
have many other uses besides serving as the base of blocks
of memory.
| Is This Answer Correct ? | 56 Yes | 9 No |
Answer / siddhartha
Arrays allocate the memory space which cannot resized or
reassigned. But in case of pointers the memory size can be
resized
| Is This Answer Correct ? | 42 Yes | 8 No |
Answer / swetha.j.n
Array is a group of elements.But pointer is not a group of
elements.
Array refer to the data in memory location.But pointer
refer to the address in memory location.
| Is This Answer Correct ? | 21 Yes | 2 No |
Answer / rag
ARRAYS are allocated at compile time.
POINTERS are alocated at run time.
USE POINTERS FOR PROGRAM EFFICIENCY,BECAUSE MEMORY IS
PRECIOUS ONE. So to reduce memory use pointers.
| Is This Answer Correct ? | 16 Yes | 3 No |
Answer / sankar s
array refer data in memory location , pointer refer address
to the memory location ,pointer refer the pointee
int *a;
int b[10];
a=&b;
where a is the pointer array b is pointee which point out
the starting memory location of an array.
| Is This Answer Correct ? | 24 Yes | 13 No |
What does *p++ do?
What does 1f stand for?
what will be the result of the following program ? char *gxxx() { static char xxx[1024]; return xxx; } main() { char *g="string"; strcpy(gxxx(),g); g = gxxx(); strcpy(g,"oldstring"); printf("The string is : %s",gxxx()); } a) The string is : string b) The string is :Oldstring c) Run time error/Core dump d) Syntax error during compilation e) None of these
Explain what standard functions are available to manipulate strings?
HOW TO SOLVE A NUMERICAL OF LRU IN OS ??????
write a sorting prgm to sort 50 nos and sum them and also remove all the occurrences of 15 and print it?
wat is the difference between a definition and declaration? float y;---it looks like a declaration..but it s a definition.how?someone explain
What are the different types of constants?
Where static variables are stored in c?
Write a C program that defines a 2-dimentional integer array called A [50][50]. Then the elements of this array should randomly be initialized either to 1 or 0. The program should then print out all the elements in the diagonal (i.e. a[0][0], a[1][1],a[2][2], a[3][3], ……..a[49][49]). Finally, print out how many zeros and ones in the diagonal.
How would you use the functions fseek(), freed(), fwrite() and ftell()?
0 Answers Aspire, Infogain, TISL,
How can I call a function with an argument list built up at run time?