Golgappa.net | Golgappa.org | BagIndia.net | BodyIndia.Com | CabIndia.net | CarsBikes.net | CarsBikes.org | CashIndia.net | ConsumerIndia.net | CookingIndia.net | DataIndia.net | DealIndia.net | EmailIndia.net | FirstTablet.com | FirstTourist.com | ForsaleIndia.net | IndiaBody.Com | IndiaCab.net | IndiaCash.net | IndiaModel.net | KidForum.net | OfficeIndia.net | PaysIndia.com | RestaurantIndia.net | RestaurantsIndia.net | SaleForum.net | SellForum.net | SoldIndia.com | StarIndia.net | TomatoCab.com | TomatoCabs.com | TownIndia.com
Interested to Buy Any Domain ? << Click Here >> for more details...


what is the difference between %d and %*d in c languaga?

Answers were Sorted based on User's Feedback



what is the difference between %d and %*d in c languaga?..

Answer / sivakumar

anand and manini your expectations are wrong. because %d
give the original value of the variable and %*d give the
address of the variable.
eg:-
int a=10,b=20;
printf("%d%d",a,b);
printf("%*d%*d",a,b);

result is 10 20 1775 1775
here 1775 is the starting address of the memory allocation
for the integer.a and b having same address because of
contagious memory allocation.

Is This Answer Correct ?    35 Yes 19 No

what is the difference between %d and %*d in c languaga?..

Answer / azad sable,chiplun.

In first case i.e. '%d' the '%' indicates that the
conversion specification follows. And 'd' known as data
type charactor indicates that the no. to be read is in
intiger mode.
* is an input field which specifie field width.
example
scanf("%d%*d%d",&a,&b);
will assign the data 123 456 789 as follows.123 to a 456
skipp because of * 789 to b.

Is This Answer Correct ?    9 Yes 5 No

what is the difference between %d and %*d in c languaga?..

Answer / vishal pandey

int v=23,d=89;
printf("%d %*d",v,d);
then o/p v=23 and d=address value and address value change with processor but original value does not change.

Is This Answer Correct ?    3 Yes 2 No

what is the difference between %d and %*d in c languaga?..

Answer / shivam chaurasia

The %*d in a printf allows you to use a variable to control the field width, along the lines of:
int wid = 4;
printf ("%*d
", wid, 42);

output,...
..42


if the form is like this...
printf ("%*d %*d
", a, b);
is undefined behaviour as per the standard, since you should be providing four arguments after the format string, not two (and good compilers like gcc will tell you about this if you bump up the warning level). From C11 7.20.6 Formatted input/output functions:

If there are insufficient arguments for the format, the behavior is undefined.

It should be something like:

printf ("%*d %*d
", 4, a, 4, b);


check this link for extra detail....
http://www.cplusplus.com/reference/cstdio/printf/

Is This Answer Correct ?    1 Yes 0 No

what is the difference between %d and %*d in c languaga?..

Answer / satya

i will agree with sivakumar

Is This Answer Correct ?    3 Yes 3 No

what is the difference between %d and %*d in c languaga?..

Answer / anand

both are same only and give the same out put

Is This Answer Correct ?    4 Yes 18 No

what is the difference between %d and %*d in c languaga?..

Answer / manini

according to me the ques has no meaning.

Is This Answer Correct ?    2 Yes 22 No

Post New Answer

More C Interview Questions

Write a simple program to find the size of different basic data types in C.

3 Answers  


what information does the header files contain?

6 Answers   BSNL, Cisco, GDA Technologies,


How can I find the day of the week given the date?

0 Answers  


What do you mean by invalid pointer arithmetic?

0 Answers  


what is purpose of fflush(stdin) function

4 Answers  


what is const volatile?

2 Answers  


write a program of palindrome(madam=madam) using pointer?

5 Answers   L&T,


the maximum value that an integer constant can have is a) -32767 b) 32767 c) 1.701e+38 d) -1.7014e+38

1 Answers  


what is associativity explain what is the precidence for * and & , * and ++ how the folloing declaration work 1) *&p; 2) *p++;

0 Answers   L&T,


int i=3; this declaration tells the C compiler to a) reserve space in memory to hold the integer value b) associate the name i with this memory location c) store the value 3 at this location d) all the above

0 Answers  


What is scope rule of function in c?

0 Answers  


What kind of sorting is this? SORT (k,n) 1.[Loop on I Index] repeat thru step2 for i=1,2,........n-1 2.[For each pass,get small value] min=i; repeat for j=i+1 to N do { if K[j]<k[min] min=j; } temp=K[i];K[i]=K[min];K[min]=temp; 3.[Sorted Values will be returned] A)Bubble Sort B)Quick Sort C)Selection Sort D)Merge Sort

3 Answers   Accenture,


Categories