At 23:08 2006-12-28, Saswat Praharaj wrote:

Not all  guys write new code.
As a professional you may need to do code maintenance and bug fixing also.

There might be instances where some moron has written this kind of code.
Struct address +1 and so on.

if such code is written it is ONLY because fools keep providing incorrect answers to such questions as "how do I do it?"


So when you go through this sort of code you actually need to know what the programmer tried to do there, It is a bad coding practice but in real world you need to know the bad things if you want to be good.

I will give you an example :

I was going through mplayer code. The code was doing some protocol handling.

To get into the data part he did a base address + sizeof(header struct).

He was getting the data in

base address + 31

When I took the same code and used it somewhere else I was getting

base address + 32 and i was losing the first byte of data field..

He had pragma packing enabled and my compiler did not support pragma packing and I spent an hour finding this problem as the code base was huge.

So here in c-prog , we actually need to educate people about the pitfalls of this kind of bad coding practice with examples.

They are asking because they  don't know, it's as simple as that.

then don't take offense when I yell "DON'T DO THAT!!"


Best ,
-Saswat



On Tue, 2006-12-26 at 13:03 -0700, Victor A. Wagner Jr. wrote:
At 01:39 2006-12-26, tamilselvan balan wrote:


The structure Name always points to the first element of the structure.

Orgin + 0 == Orgin.ch  it is True

but Orgin +1, Orgin+2 not points to the next elements.
Why?

you still haven't answered MY question.
Why do you think you need to do this?



"Victor A. Wagner Jr." <[EMAIL PROTECTED]> wrote:

At 19:38 2006-12-22, tamilselvan balan wrote:Hi Friends, Can any body tell me how to access the structure elements without using the elements name.


short answer: no.longer answer: portably? definitely not.

now for my question.  Why do you think you need to do this?

(e.g) typedef struct { char *ch; int id; float salary; } Base; Base orgin; orgin + 0 point to the first element of Base ( ch )orgin +1 point to second element of Base (id)orgin + 2 point to Third element of Base ( salary) Is it possible to access the elements like this , if yes please let me to know Thanks&Regards,Selvan.

Send free SMS to your Friends on Mobile from your Yahoo! Messenger. Download Now! <http://messenger.yahoo.com/download.php>http://messenger.<http://messenger.yahoo.com/download.php>yahoo.com/<http://messenger.yahoo.com/download.php>download.<http://messenger.yahoo.com/download.php>php
Victor A. Wagner Jr. <http://rudbek.com/>http://rudbek.<http://rudbek.com/>comThe five most dangerous words in the English language: "There oughta be a law"


Send free SMS to your Friends on Mobile from your Yahoo! Messenger. Download Now! <http://messenger.yahoo.com/download.php>http://messenger.<http://messenger.yahoo.com/download.php>yahoo.com/<http://messenger.yahoo.com/download.php>download.<http://messenger.yahoo.com/download.php>php

Victor A. Wagner Jr. <http://rudbek.com/>http://rudbek.<http://rudbek.com/>comThe five most dangerous words in the English language: "There oughta be a law"



Victor A. Wagner Jr.      http://rudbek.com
The five most dangerous words in the English language:
              "There oughta be a law" 

Reply via email to