Please Explain me the output


 
Thread Tools Search this Thread
Top Forums Programming Please Explain me the output
# 8  
Old 01-03-2008
Quote:
Originally Posted by vikashtulsiyan
#include<stdio.h>

char *def[5]={"pqrs","rstu","tuvw","vwxyz","xyzab"};
char abc[5][5]={"abc","def","ghi","jkl","mno"};

void main()
{
char *p=(char *)def;
p=p+40;
printf("%s\n",p);
}

the output of the abve code snippet is mno...
HOW??? beats me.. please help
There are some basic things that are wrong with the above code. That's why the output doesn't make sense. You can't equate p to def since p is a pointer to char while def is a pointer to pointer to char. In fact the proper declaration for p and the code should be...

Code:
char **p = def;
p=p+40;
printf("%s\n",*p);

The problem occurs probably because def is being cast to a unilevel pointer as in (char *)def and hence outputs garbage.
# 9  
Old 01-09-2008
actully what puzzled me (and why i posted this question) is that the output is consistent in several platforms i ran the code. again this code i got from a book which explains in some vague way why the outout should always be mno
# 10  
Old 01-11-2008
Quote:
Originally Posted by vikashtulsiyan
actully what puzzled me (and why i posted this question) is that the output is consistent in several platforms i ran the code. again this code i got from a book which explains in some vague way why the outout should always be mno
What compiler and on what platform is it giving this output? I am unable to duplicate your results.
# 11  
Old 01-11-2008
Quote:
Originally Posted by shamrock
What compiler and on what platform is it giving this output? I am unable to duplicate your results.


am using SUNOS 5.9 with cc compiler
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Solaris

Explain the output of swap -s and swap -l

Hi Solaris Folks :), I need to calculate the swap usage on solaris server, please let me understand the output of below swap -s and swap -l commands. $swap -s total: 1774912k bytes allocated + 240616k reserved = 2015528k used, 14542512k available $swap -l swapfile dev swaplo... (6 Replies)
Discussion started by: seenuvasan1985
6 Replies

2. UNIX for Dummies Questions & Answers

netstat -an output, pls. explain..

Hi, I have old SCO O/S. System keeps crashing. I made lot of changes to kernel but so for nothing helped. I wrote a script which takes netstat -an output every one minute. I saw some thing right before the system crashed. Not sure if this means anything.. uname -a SCO_SV djx2 3.2... (2 Replies)
Discussion started by: samnyc
2 Replies

3. Solaris

Help Explain the output of probe-scsi

Can anyone explain the output of probe-scsi command below? ok probe-scsi Target 0 Unit 0 Disk SEAGATE ST373207LSUN72G 045A Target 1 Unit 0 Disk SEAGATE ST373207LSUN72G 045A I have no idea what it means. I tried to read online but I still did not understand. I appreciate... (6 Replies)
Discussion started by: cjashu
6 Replies

4. Shell Programming and Scripting

need explain

Dear unix team i'm user for a system build on unix system ,so we need to run a lot of scripts not in one sission but every script on the associated terminal , so the script name = the name of the terminal which will run this script on it . and someone create a batch that make as below : 1- but... (4 Replies)
Discussion started by: fofatoti
4 Replies

5. Shell Programming and Scripting

Can anyone please explain this??

cur_fy=`grep "CONSOL" $GLDATA/parms/cur_fiscalyear.lis | awk '{print $2}' Here i don't understand "CONSOL" and awk'{print$2) Please help me out cur_fiscalyear.lis contents : DL 2011 MOL 2011 MV 2011 SF 2010 CONSOL 2011 MVU 2011 (3 Replies)
Discussion started by: Diddy
3 Replies

6. Programming

Explain output

#include<signal.h> #include<stdio.h> #include<stdlib.h> sigcatcher() { printf("pid=%d",getpid()); signal(SIGINT,sigcatcher); //line1 } main() { int ppid; signal(SIGINT,sigcatcher); if(fork()==0) { sleep(5); ppid=getppid(); while(1)... (4 Replies)
Discussion started by: gol007
4 Replies

7. Shell Programming and Scripting

can any one explain this example

hi all i have an example i want one help me to understand cause i tried to test it but almost fail and i don't know how can i solve this problem " the main idea to read from two files and replace something from one to another " but i don't understand why it fail all time $ cat main.txt... (4 Replies)
Discussion started by: maxim42
4 Replies

8. UNIX for Dummies Questions & Answers

Please explain this

if then echo "Syntax: $0 <sid> <COLD/HOT> <DEST>" exit fi if --------------what does this mean??? echo "Syntax: $0 <sid> <COLD/HOT> <DEST>"---pls explain this as well (2 Replies)
Discussion started by: appsdba.nitin
2 Replies

9. Shell Programming and Scripting

Please can any one explain this ${0##/}

I did not understand what is ${0##/} PGM=${0##/} TMP=/tmp/${PGM}.$$ Please explain me. (2 Replies)
Discussion started by: gadege
2 Replies

10. UNIX for Dummies Questions & Answers

Explain the output of the command....

Explain the output of the command “sort -rfn file1 | more” (1 Reply)
Discussion started by: wickbc
1 Replies
Login or Register to Ask a Question