Solved

Global variables

Posted on 1998-07-22
2
269 Views
Last Modified: 2010-04-15
I have the following declaration in the header file of my project. This header file is included in every source file of the project. At one point in my main routine, I set this pointer to an address. After that, I start a series of threads that use the pointer. The problem is, some of the routines I call don't show the value I set prior to calling them but instead show NULL (the pointer's compile time value). What's wrong?

...
static struct CONNLIST *pProcessList = NULL;
...
0
Comment
Question by:flfmdll
2 Comments
 
LVL 5

Accepted Solution

by:
yonat earned 20 total points
ID: 1251781
"static" means file scope. So there is a separate pProcessList for each file that #includes this header. Replace "static" with "extern" in the header:
    extern struct CONNLIST *pProcessList;
and define the variable in just *one* of your .c files:
    struct CONNLIST *pProcessList = NULL;

0
 

Author Comment

by:flfmdll
ID: 1251782
Thank you. That works just fine. My excuse: it's been a very long time since I have used global variables.
0

Featured Post

3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Summary: This tutorial covers some basics of pointer, pointer arithmetic and function pointer. What is a pointer: A pointer is a variable which holds an address. This address might be address of another variable/address of devices/address of fu…
Windows programmers of the C/C++ variety, how many of you realise that since Window 9x Microsoft has been lying to you about what constitutes Unicode (http://en.wikipedia.org/wiki/Unicode)? They will have you believe that Unicode requires you to use…
The goal of this video is to provide viewers with basic examples to understand and use pointers in the C programming language.
The goal of this video is to provide viewers with basic examples to understand opening and reading files in the C programming language.

895 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

17 Experts available now in Live!

Get 1:1 Help Now