社区
C语言
帖子详情
关于函数返回值的菜鸟问题
fqye
2003-07-10 04:48:52
如果想利用函数的参数带回返回值,应该怎么写呢?
比如:
void test(int a,int b,int c)
{
……
}
不用return指令。
在调用这个函数的时候想只输入a的值,b和c是输出。
...全文
30
23
打赏
收藏
关于函数返回值的菜鸟问题
如果想利用函数的参数带回返回值,应该怎么写呢? 比如: void test(int a,int b,int c) { …… } 不用return指令。 在调用这个函数的时候想只输入a的值,b和c是输出。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用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语言
菜鸟
基础教程之自定义
函数
先动手编写程序: #include int add(int x, int y) { int z = x + y; return z; } int main() { int a = 1; int b = 2; int c = add(a, b); printf(c = %d\n, c); return 0; } 运行结果: c = 3 程序分析: (1)
函数
定义的形式为: 类型
函数
名称(类型 形式参数,……) {
函数
体 } (2) 对应于咱们的程序,定义了一个名为add的
函数
,add左边的int代表的
函数
的
返回值
的类型。对应于函
周立功USBCAN-2A接口卡
函数
库使用说明
周立功usbcan接口
函数
说明 2.4. 接口库
函数
说明 2.4.1. VCI_OpenDevice 描述 此
函数
用以打开设备。 DWORD __stdcall VCI_OpenDevice(DWORD DevType, DWORD DevIndex, DWORD Reserved); 参数 DevType 10 设备类型号。 DevIndex 设备索引号,比如当只有一个PCI5121时,索引号为0,有两个时可以为0或1。 (注:当为CAN232时,0表示要打开的是COM1,1表示要打开的是COM2。) Reserved 当设备为CAN232时,此参数表示为用以打开串口的波特率,可以为2400,4800,9600,14400,19200,28800,57600。当设备为CANET-UDP时,此参数表示要打开的本地端口号,建议在5000到40000范围内取值。当设备为CANET-TCP时,此参数固定为0。当为其他设备时此参数无意义。
返回值
为1表示操作成功,0表示操作失败。
菜鸟
学习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语言
69,371
社区成员
243,082
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章