【发布时间】:2018-09-20 02:00:39
【问题描述】:
我这周开始学习 C,这是我遇到的第一个困难。
我想测试一下这个功能:
void ft_ultimate_div_mod(int *a, int *b)
{
int *tmp;
if (b != 0)
{
*tmp = *a % *b;
*a = *a / *b;
*b = *tmp;
}
}
但我无法弄清楚主要使用指针。我的程序没有打印任何内容:
int main(void)
{
int *a;
int *b;
*a = 5;
*b = 3;
ft_ultimate_div_mod(a, b);
printf("%d", *a);
printf("%d", *b);
return (0);
}
我能做什么?谢谢!
【问题讨论】:
-
不要在
main中声明指针并使用地址操作符& -
@UnholySheep 我删除了
*'s并打电话给ft_ultimate_div_mod(&a, &b)没有运气 -
int* tmp;也应该是int tmp;(并从所有tmp的使用中删除*) -
b 是一个指针。你是说 if (*b != 0) 吗?
-
@purec 你是对的。他的意思是 *b != 0.:)
标签: c function pointers testing main