Pic very basic C18 question

I'm pushing along trying to learn some C using MCC18. Can someone please tell me what the "&" before the variable "variable" does or means in the code below? I'm finding it hard to find basic info like this in the documentation I've found.

Is it AND? AND with what?

thanks

ee_read_byte(0x00, &cal_var); //initialise calibration variable from eeprom

why the "&" -----------^

unsigned char ee_read_byte(unsigned char address, unsigned char *_data){ EEADR = address; EECON1bits.CFGS = 0; EECON1bits.EEPGD = 0; EECON1bits.RD = 1; *_data = EEDATA; }

Reply to
Royston Vasey
Loading thread data ...

read as: "address of" ...

... because this expects a pointer (i.e., an address) ------------^^^^

Reply to
D Yuniskis

e=20

e=20

I don't think you can learn C very efficiently by posting questions to ask what the syntax does. The normal and more efficient method is to read a book. If that is too old fashioned, then try Google:

formatting link

--=20

Regards, Richard.

  • formatting link
    Designed for Microcontrollers. More than 7000 downloads per month.

  • formatting link
    Certified by T=DCV as meeting the requirements for safety related systems= =2E

Reply to
FreeRTOS info

That's because you've either been looking for the wrong kind of documentation, or you've tackled this whole "learning a programming language" task entirely the wrong way round.

What you actually need is introductory documentation of the C programming language, a.k.a. a C textbook. The 2nd edition of the one by Kernighan & Ritchie, who invented the language, is still among the best.

And the right order of things is not to jump in and try to understand existing code by guessing what each letter in it means, but to actually _learn_ the language first, then apply that knowledge to existing code.

Reply to
Hans-Bernhard Bröker

This symbol means "the one with a tail should go down from the tree".

VLV

Reply to
Vladimir Vassilevsky

e
e

from

I always wonder why they did not use @. It would have been much clearer. After all, it was designed by a committee of two only.

Reply to
linnix

ROTFL!

Reply to
D Yuniskis

Thanks for the reply. I dont doubt you are correct with your comments re my approach! :)

Reply to
Royston Vasey

thanks for that.

Reply to
Royston Vasey

language, a.k.a. a C

the language, is still

approach! :)

As a hardware engineer who 'did some C at university' I found 'Practical C Programming' (O'Reilly) very good.

Nial.

Reply to
Nial Stewart

ase

the

le from

May be thats why "committee of two" have also provided macros.

If you wanted to use @ for &, what do you want to use for @ ?

Reply to
dk

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.