c 编程使用静态变量然后指向它?可能的?

标签 c function pointers memory-address static-variables

在c中,当在函数内创建和返回静态变量的地址时,它会与 初始化一个简单的

int sNum2 = 0 ; int * temp = &sNum2;

? static 基本上会在内存中拥有自己分配的大小,对吗?

我现在可以从 staticNum 函数指向它吗?

也许这不是一个好的做法,但是可以使用吗?

 int * staticNum(){
  int static sNum=0;
  int * temp=&sNum;
  sNum++;
  return temp;
}

最佳答案

这是有效的代码。

静态变量,无论是在文件作用域还是在函数内部声明,都具有完整的程序生命周期。这意味着它的地址将始终有效,并且可以在程序中的任何点安全地取消引用。

关于c 编程使用静态变量然后指向它?可能的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70703153/

相关文章:

function - 如何使用 CMake 检查 accept4

指向常量结构中结构元素的常量指针

C++ 指针 : changing the contents without changing the address?

c++ - 使用 C 中系统调用的文件描述符

c - 如何在不使用 SIGWAIT 的情况下阻止线程中的所有信号?

c - 套接字编程中从客户端获取char()

c++ - 在函数中传递显式字符数组?

javascript - 不要淡入,直到淡出完全完成

无法将文件名分配给vim中的环境变量

C++在访问持有该成员的对象时无法访问对象成员