相关疑难解决方法(0)

printf("%d")不显示我输入的内容

我的代码:

printf("Enter a number : ");

scanf("%d", &number);

printf("%d is what I entered\n", &number);
Run Code Online (Sandbox Code Playgroud)

我输入了2,

预期产量: 2 is what I entered

实际产量: 2293324 is what I entered

这有什么问题?

c printf

7
推荐指数
2
解决办法
449
查看次数

c 按值传递数组?

我有这个作业问题:

甲部

编写一个 C 程序,测试以下数据类型是按引用还是按值传递,并将其发现的内容打印到终端:

  • 整数
  • 整数数组

假设,如果你的程序发现一个 int 是按值传递的,而一个 int 数组是按值传递的,那么它应该产生如下输出: int: pass-by-value array of ints: pass-by-value

我理解的 int ,但我没有得到的是:

  1. 我认为传递数组的唯一方法是传递数组中第一个值的地址
  2. 这算作按值传递还是按引用传递?(按值将数组传递给函数让我很困惑)
  3. 关于我如何做到这一点的提示?我假设一些事情就像将引用传递给另一个函数,操作它,看看它是否改变了,但我不确定......

编辑:如果有人用一个具体的例子向我解释这一点可能会有所帮助,例如:假设我有一个长度为 10 个整数的数组存储在内存位置 0(是的,我知道,不是现实生活,但为了这个例子。 ...)。如果该数组是通过引用传递的,它会是什么样子?如果按值传递它会是什么样子?

c arrays

1
推荐指数
1
解决办法
6416
查看次数

标签 统计

c ×2

arrays ×1

printf ×1