Page 1 of 1

PostPosted: Tue Mar 08, 2005 6:44 pm
by izzy
I've gotten bored with PocketC and started to learn C proper. The fist thing I made, of course, is a PocketC library. A couple of questions.

1) How do you declare a pointer argument in a library function?

I,ve declared it as a vtInt and then

long *lPtr;
lPtr = (*long)myInt.iVal;

Is this right?

2)Everything compiled correctly in CodeWarrior 9.0, but when I tried to compile a program using the library on my palm, it gave me the message ' MyFunc definition not found'. When I tried to compile it on the Emulator, it compiled correctly, but got an address error.I must have some setting or path messed up in CodeWarrior.

Can anyone help me?

PostPosted: Wed Mar 09, 2005 6:15 pm
by izzy
Hello! Anyone out there? Please?

PostPosted: Thu Mar 10, 2005 12:28 am
by mgreen
Look at the Native Libraries global function deref(int ptr). It converts a Pocket C pointer into a "real" PalmOS pointer which you can then use to reference the value you want.

Michael Green

PostPosted: Fri Mar 11, 2005 1:41 pm
by izzy
Thanks, Anyone for Question 2?

PostPosted: Sun Mar 13, 2005 10:56 pm
by dewey
Problem 1 would have caused the crash in problem two. If the function is not found when compiling on the device, you should check that your PocketCLibAddFunctions function is implemented correctly.