c - 为什么C语言中的指针会出错?

标签 c

我开始学习 C 中的指针。

为什么我在 &i 第 8 行出现错误?

这是来源:

char * func(char *d, char *str) 
{
    return d;
}

int main(int argc, char *argv[])
{
    char *i = NULL;
    func(&i, "aaa"); // line 8. here I have the error (in "&i")
}

最佳答案

您正在传递 char** 并且该函数需要一个 char*。您需要传递 i 而不使用 & 运算符的地址,因为这样您将获取指针的地址。

只需传递func(i, "aaa");

关于c - 为什么C语言中的指针会出错?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22217259/

相关文章:

c - Entab 程序意外错误(读访问冲突)

C 运行时错误 #3

c++ - 如何使用算术生成预处理器定义?

c++ - 哪个 winapi 函数允许我更改登录用户的密码?

c - 我在 Windows 10 上找不到/rootfs

c - WinAPI - CryptDecrypt() 在 AES 256 中无法正常工作

c - 信息隐藏如何阻止函数访问单个数组元素?

c - Scanf 不等待输入

编译错误 : "creating array with negative size (' -0x0000000000000000 1')", "assignment of read-only location"

c - c中if语句中表达式的求值