In the .h file that is included by both, put in "extern UInt16
SerialRefNum;", then put the actual "UInt16 SerialRefNum;" in _only_ one of
the .c files (wherever it seems to fit best; which file you declare it in is
really just a style question, and won't affect functionality).
-Thomee Wright-
"Andrew Lathrop" <[EMAIL PROTECTED]> wrote in message
news:19785@palm-dev-forum...
>
> Thanks Thomee. That did appear to be my error. Another question on the
> same topic, how do i use variables between the modules? For instance, i
> create UInt SerialRefNum in the main.c file. I then need to use it in the
> char.c file. If i declare it again in the char.c file, the compiler tells
> me it was already declared in main.c. If i don't, it says the variable
was
> an undefined identifier. I tried to delcare it in a header file that was
> included in both c files, but i then got an incorrect use of header
message.
> Any ideas? Thanks
> Andrew
> Thomee Wright <[EMAIL PROTECTED]> wrote in message
> news:19647@palm-dev-forum...
> >
> > I can't see any problems with it right off, but your description of the
> > error was pretty vague. If you could include the actual text of the
error
> > message (esp. line numbers), that would help. A problem that it looks
> like
> > you haven't seen yet but will is that chars.c needs to include any
> relevant
> > .h files as well, or you will get errors when trying to call any PalmOS
> > function, and when trying to refer to any of your resources that are
> defined
> > in Test_res.h. (Maybe this is your problem, and I just misunderstood
your
> > description of the error).
> >
> > -Thomee Wright-
> >
> > "Andrew Lathrop" <[EMAIL PROTECTED]> wrote in message
> > news:19607@palm-dev-forum...
> > >
> > > Im trying to split my larger program into several modules. I know you
> need
> > > to make the header file, and then include the header in both the main
c
> > file
> > > and the file you made the header for. I can't get mine to quite work
out
> > > right. I have tried changing the declarations in the header to
extern,
> > > removing the identifiers, and other things i cna think of, but i still
> get
> > > errors. I enclosed the header file, as well as the c file. The way
it
> > > currently is, i get error messages looking for a ) in the declarations
> in
> > > the header after the identifier, and that it is looking for an
identifer
> > > after the closing ) that already is there. Any advice is greatly
> > > appreciated. Thanks
> > > Andrew
> > >
> > > (HEADER FILE)
> > > #ifndef CHARS_H
> > > #define CHARS_H
> > > /////
> > > // chars.h
> > > /////
> > >
> > > void send_char( Byte p );
> > > Byte recv_char();
> > >
> > > #endif
> > >
> > > (C FILE)
> > > /////
> > > // chars.c
> > > /////
> > >
> > > #include "chars.h"
> > >
> > > // void send_char( Byte p );
> >
> > > // Byte recv_char( );
> > >
> > > void send_char( Byte p )
> > > {
> > > Err e;
> > >
> > > SerSend(SerialRefNum, &p, 1, &e );
> > > if( e )
> > > FrmCustomAlert( ErrorAlert, "Error", "", "" );
> > > }
> > >
> > > Byte recv_char( )
> > > {
> > > Err e;
> > > Byte f;
> > >
> > > SerReceive(SerialRefNum,&f,1,0,&e);
> > > if( e )
> > > FrmCustomAlert( ErrorAlert, "Error", "", "" );
> > >
> > > return( f );
> > > }
> > >
> > > (MAIN.C)
> > > #include <Pilot.h>
> > > #include <Graffiti.h>
> > > #include <SysEvtMgr.h>
> > > #include <SerialMgr.h>
> > > #include "Test_res.h"
> > > #include "chars.h"
> > > ...
> > >
> > >
> > >
> > >
> >
> >
> >
> >
>
>
>
>
--
For information on using the Palm Developer Forums, or to unsubscribe, please see
http://www.palmos.com/dev/tech/support/forums/