社区
C语言
帖子详情
关于函数返回值的菜鸟问题
fqye
2003-07-10 04:48:52
如果想利用函数的参数带回返回值,应该怎么写呢?
比如:
void test(int a,int b,int c)
{
……
}
不用return指令。
在调用这个函数的时候想只输入a的值,b和c是输出。
...全文
39
23
打赏
收藏
关于函数返回值的菜鸟问题
如果想利用函数的参数带回返回值,应该怎么写呢? 比如: void test(int a,int b,int c) { …… } 不用return指令。 在调用这个函数的时候想只输入a的值,b和c是输出。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
23 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fqye
2003-07-10
打赏
举报
回复
WYC2300(无一从) :全局变量和局部变量怎么处理?
gunsrose
2003-07-10
打赏
举报
回复
void test(int *a,int *b,int *c)
{
……
}
或
void test(int &a,int &b,int &c)
{
……
}
这样 a,b,c 三个值都返回了1!!!!!!
WYC2300
2003-07-10
打赏
举报
回复
#include <stdio.h>
void test(int a,int * b ,int * c)
{
*b=a+1;
*c=a+2;
}
int main(int argc, char* argv[])
{
int a=1;
int b,c; /*notice*/
test(a,&b,&c); /*将变量b,c的地址传进去*/
printf("a=%d b=%d c=%d",a,b,c);
getc(stdin);
return 0;
}
除了以上的方法外还可以通过局部变量和全局变量来控制~~
zteliubin
2003-07-10
打赏
举报
回复
我不是说了怎么调用了吗,呵呵
fqye
2003-07-10
打赏
举报
回复
哦,好像这样指向了空指针,是吗?
fqye
2003-07-10
打赏
举报
回复
不懂了
int *b,*c;
test(a,b,c);
和
int b,c;
test(a,&b,&c);
传进去的不都是地址吗?为什么不一样呢?
bigtea
2003-07-10
打赏
举报
回复
应该这样调用
#include <stdio.h>
void test(int a,int * b ,int * c)
{
*b=a+1;
*c=a+2;
}
int main(int argc, char* argv[])
{
int a=1;
int b,c; /*notice*/
test(a,&b,&c); /*将变量b,c的地址传进去*/
printf("a=%d b=%d c=%d",a,b,c);
getc(stdin);
return 0;
}
fqye
2003-07-10
打赏
举报
回复
不懂了
int *b,*c;
test(a,b,c);
和
int b,c;
test(a,&b,&c);
传进去的不都是地址吗?为什么不一样呢?
fqye
2003-07-10
打赏
举报
回复
改成这样OK了
void test(int a,int * b ,int * c)
{
*b=a+1;
*c=a+2;
}
int main(int argc, char* argv[])
{
int a=1;
int b,c;
test(a,&b,&c);
printf("a=%d b=%d c=%d",a,b,c);
getc(stdin);
return 0;
}
fierygnu
2003-07-10
打赏
举报
回复
int b, c;
不是
int *b, *c;
fqye
2003-07-10
打赏
举报
回复
这样行不行?
void test(int a,int * b ,int * c)
{
*b=a+1;
*c=a+2;
}
int main(int argc, char* argv[])
{
int a=1;
int *b,*c;
test(a,b,c);
printf("a=%d b=%d c=%d",a,*b,*c);
getc(stdin);
return 0;
}
fqye
2003-07-10
打赏
举报
回复
stukov2002(卡拉是头猪) :这样写运行出错,异常。
zteliubin
2003-07-10
打赏
举报
回复
对头,tnnd,又搞错了。
*b=...;
*c=...;
xueqt
2003-07-10
打赏
举报
回复
呵呵,楼上几威都很热心
idontlikenickname
2003-07-10
打赏
举报
回复
老兄别慌啊~ :D
c:
void test(int a,int* b,int *c)
{
*b=...; // 应该如此
*c=...; // 应该如此
}
nirvana_li
2003-07-10
打赏
举报
回复
同意楼上的!!
c++中可以使用reference:
void test(int a,int &b,int &c)
zteliubin
2003-07-10
打赏
举报
回复
tmd,提交失败!
c:
void test(int a,int* b,int *c)
{
b=...;
c=...;
}
调用:test(a,&b,&c);
c++:
void test(int a,int &b,int &c)
{
b=...;
c=...;
}
调用:test(a,b,c);
够全吧,给分!
fqye
2003-07-10
打赏
举报
回复
就是说函数返回值必须用指针才能带出来?
zteliubin
2003-07-10
打赏
举报
回复
c:
void test(int a,int* b,int *c)
{
b=...;
c=...;
}
调用:test(a,&b,&c);
c++:
void test(int a,int &b,int &c)
{
b=...;
c=...;
}
调用:test(a,b,c);
够全吧,给分!
fierygnu
2003-07-10
打赏
举报
回复
倒!
C/C++是值传递,必须使用指针或引用才行。
void test(int a, int *pb, int &c)
{
*pb = 1;
c = 2;
...
}
加载更多回复(3)
如何让C++
函数
返回值
死心塌地为你工作
本文主要研究的是C++
函数
返回值
,你必须注意的
问题
,下面进入正题。 C++太繁杂了,先接触C++后接触python这样的语言,你就再也不想碰它,因为,就连一个
函数
返回值
都一大堆的说道,这里面的玄机,连工作三年的C++熟手都未必能准确的理解和运用。 归根结底,C++所面临的
问题
要求它提供各种各样的机制以保证性能,也许,这辈子也见不到C++能安全有效的自己进行内存垃圾回收。。。。。 老程序猿都会提醒
菜鸟
,注意
函数
的
返回值
,因为,很可能,你的
函数
返回的数据在后续的使用中会出错。那么
函数
在
返回值
时要注意什么呢? 本篇博客尝试用最简练的普通大白话,讲解
函数
返回值
的
问题
。 C++把内存交给了程序猿,但是,
C语言
菜鸟
基础教程之自定义
函数
自定义
函数
: 必须直接或间接在main中调用,否则该自定义
函数
不会被执行。
返回值
类型
函数
名(参数类型 参数名,参数类型 参数名...)
菜鸟
学习C语言——结构体类型
函数
返回值
问题
最近码代码时遇到一个
返回值
的
问题
,一直报warning,后来查了下资料才知道原因,现在做下记录。 typedef struct { int a; int b; }Test_T; Test_T c[3]; Test_T* fun(void) { return &c; } 一开始是这样写的,但是在return的地方报 warning: return from incompatible pointer type [enabled by default],然后我又查了下关于***数
C++
函数
返回值
,你必须注意的
问题
C++太繁杂了,先接触C++后接触python这样的语言,你就再也不想碰它,因为,就连一个
函数
返回值
都一大堆的说道,这里面的玄机,连工作三年的C++熟手都未必能准确的理解和运用。 归根结底,C++所面临的
问题
要求它提供各种各样的机制以保证性能,也许,这辈子也见不到C++能安全有效的自己进行内存垃圾回收。。。。。 老程序猿都会提醒
菜鸟
,注意
函数
的
返回值
,因
c#
函数
返回值
是传值还是传地址
在C#中,
函数
的
返回值
是传值还是传地址,取决于
返回值
的类型。
C语言
70,026
社区成员
243,245
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章