c - 在 C 项目中共享 "Char * "

标签 c global-variables shared-memory

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

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

文件.h

extern char *a;

文件1.c

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

文件2.c

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

我确信 foo() 会在 foo1() 之前执行。

最佳答案

检查是否已使用 malloc() 为 char *a 分配了字节?如果没有,它肯定会打印垃圾值。分配后还 memset() 指针,以便初始化时没有任何垃圾

关于c - 在 C 项目中共享 "Char * ",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29294180/

相关文章:

c - 避免 float 的不准确性

objective-c - 全局变量/单集?

c++ - 与 fork() 共享堆内存

c - 在没有 root 权限的情况下实现共享内存

c++ - Boost 的 managed_shared_memory 在两个进程(C 和 C++)之间的使用

写入数据报套接字是否可以引发 SIGPIPE?

c++ - 如何复制文件的二进制数据

c - 无法读取 C 中的 UNICODE 文本文件

ruby - 区分局部变量和全局变量有什么好处?

ios - 创建全局变量的最佳实践