c - 将 int 指针设置为等于常规 int

标签 c pointers atoi

我正在尝试将指针 (processNum) 设置为等于常规 int (processNumTemp)。我怎样才能做到这一点?我尝试只执行 processNum = processNumTemp 这会给出错误,因为我试图将指针设置为等于非指针。我怎样才能使这项工作?下面是我的代码:

int *processNum = (int *)malloc(sizeof(12));
  int processNumTemp;

  processNumTemp = atoi(argv[1]);

  processNum = processNumTemp;

最佳答案

processNum = &processNumTemp;

这将 processNumTemp 的地址存储到 processNum 中。我相信这就是你想要做的。然后,您可以通过取消引用指针来获取该值。那就是通过使用 *processNum.

关于c - 将 int 指针设置为等于常规 int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22739530/

相关文章:

pointers - 如何通过地址传递给采用接口(interface)的函数

c - 通过显式算术计算元素指针是否有效?

c++ - 相当于atoi

c++ - Unsigned int 取负值

c - 确定 TCHAR 的 calloc 数组的长度(不是字符串长度)

c - 这是将地址传递给函数的正确或可接受的方式吗?

c++ - 如何使指针指向第二个数组中的字符

C : how do I printf "the square root of 1764 is 42 and * in ascii"?

c++ - 为什么 atoi 函数不能将 const char * 转换为 int?

c - 为什么变量声明的顺序很重要?