IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

redefine will be for space or for values


IBM Mainframe Forums -> COBOL Programming
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
ashokkit

New User


Joined: 22 Apr 2005
Posts: 4

PostPosted: Mon Apr 25, 2005 3:27 pm
Reply with quote

01 rec1 .
02 a pic 9(3) value 222.
02 b pic 9(2) value 11.
01 rec2 redefines rec1 .
02 c pic 9(4).
02 filler pic x.
??
procedure division.

?????display c.

what is the anwer for this?

[/i]
Back to top
View user's profile Send private message
mmwife

Super Moderator


Joined: 30 May 2003
Posts: 1592

PostPosted: Tue Apr 26, 2005 4:46 am
Reply with quote

Hi,

The ans is 2221
Back to top
View user's profile Send private message
anuradha

Active User


Joined: 06 Jan 2004
Posts: 247
Location: Hyderabad

PostPosted: Wed Apr 27, 2005 11:21 pm
Reply with quote

Hi Ashok!

A small suggestion from me. Why don't you give a simple try with that code, rather than asking us. Experience teaches us many things and even we get a chance to expermient many things with that piece of code right!

Hope you will take my suggestion in a positive sense.
Back to top
View user's profile Send private message
ashokkit

New User


Joined: 22 Apr 2005
Posts: 4

PostPosted: Fri Apr 29, 2005 2:04 pm
Reply with quote

hai thanks alot . i got a little bit of confusion .i thought that redefines will not occupy values but uses the storage space alone . thats y ? i got clarified now .
Back to top
View user's profile Send private message
mmwife

Super Moderator


Joined: 30 May 2003
Posts: 1592

PostPosted: Sat Apr 30, 2005 9:40 pm
Reply with quote

Hi Ashok,

I'm not sure I get your point, but I'll explain my understanding:

When you define a group field w/ valued elementary sub-fields they define a string of data. In your example that string is 5 bytes long and contains "22211":

a - 3 bytes long and containing "222".
b - 2 bytes long and containing "11".

When you redefined that 5 byte string you divided it into 2 fields:

A 4 byte field (c) that contained the 1st 4 bytes of the string, "2221".
A 1 byte field (filler) that contained the 5th byte of the string, "1".

HTH
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> COBOL Programming

 


Similar Topics
Topic Forum Replies
No new posts Replace each space in cobol string wi... COBOL Programming 2
No new posts INCLUDE OMIT COND for Multiple values... DFSORT/ICETOOL 5
No new posts Replace Multiple Field values to Othe... DFSORT/ICETOOL 12
No new posts Null values are considered in Total c... DFSORT/ICETOOL 6
No new posts Converting ASCII values to COMP-3 (ZD... JCL & VSAM 2
Search our Forums:

Back to Top