在 C 项目中共享 "Char * "

Shared "Char * " in a C project

我想在整个项目中使用 Char *,我面临的问题如下。

我创建了一个头文件如下:

File.h

extern char *a;

File1.c

#include "File.h"
char *a;
void foo()
{
    //some manipulation on a
}

File2.c

#include"File.h"
void foo1()
{
 //using "a" here gives a garbage value
}

我确信 foo() 在 foo1() 之前执行了很多。

检查您是否正确初始化了它。请注意,它是指向 char 的指针。

检查您是否使用 malloc() 为 char *a 分配了字节?如果不是,它肯定会打印垃圾值。还有 memset() 分配后的指针,以便在没有任何垃圾的情况下对其进行初始化