【发布时间】:2022-01-04 11:42:58
【问题描述】:
我正在编写一个较小的程序来使用带指针的函数显示两个值。和视频https://www.youtube.com/watch?v=qG01z8unrU4一样
#include <stdio.h>
int pointers (int i){
int *p, *q;
p=&i;
q=p;
}
int main(){
printf("%d %d", pointers(10));
return 0;
}
它应该显示 10 10。我不知道在函数指针的末尾放什么(返回什么??)。
【问题讨论】:
-
1)
pointers()不返回任何内容,2)printf模板需要两个输入,但您只提供一个。可能还有更多。 -
指针函数返回的任何内容都不能满足格式字符串中的两个
%d。 -
函数只能返回一个值。要返回一个 int 添加
return *q;将打印更改为printf("%d %d", pointers(10), pointers(10)); -
整个
pointers函数是......毫无意义(双关语)。用你自己的话解释你认为它应该做什么。 -
"...和视频的一样。" 不是不一样,只是有点相似。在视频中没有什么都不做的函数,没有使用什么都不返回的函数的返回值,也没有错误使用 printf。与其在 youtube 上随机学习教程,不如买一本书。