我如何将指针传递给函数?

问题描述 投票:0回答:3

如何在函数中将指针作为参数传递?

#include <iostream>
int value = 1;
int *ptr;
ptr = &value;

void f(int *pointer)
{
 if(pointer==1)
 {
  std::cout << "z";
 }
 else
 {
  std::cout << "a";
 }
}

int main()
{
  f(*ptr);
  return 0;
}
c++
3个回答
1
投票

因为ptr已经是一个指针,所以在将其传递给函数时不必取消引用它。您可以执行以下操作:

f(ptr);

一旦在函数内部,您将要取消引用指针以获取指向的指针:

if(*pointer==1)

希望对您有帮助。


0
投票
#include <iostream>


void f(int *pointer)
{
    if(pointer!=nullptr)
    {
        std::cout << "z";
    }
    else
    {
        std::cout << "a";
    }
}

int main()
{
    int value = 1;
    int *ptr=nullptr;
    ptr = &value;
    f(ptr);
    return 0;
}

0
投票

如何在函数中将指针作为参数传递?

以与传递其他对象相同的方式。我将向您展示如何并排传递整数和指针(实际上是在上方和下方):

int value = 1;
int *ptr;
ptr = &value;

void f(int *pointer);
void g(int integer);

f(ptr);
g(value);

传递指针和传递整数没有区别。

© www.soinside.com 2019 - 2024. All rights reserved.