如何用函数同时输出变量名和变量的值

Anorak Bear 2019-11-04 03:10:29
#include<stdio.h> int main() { void pf(); int num=5,sum=89; pf(num); pf(mun); return 0; } void pf() { } 我想实现输出 num is 5 sum is 89 请问如何编写函数pf() 如果需要增加pf的参数也可以
...全文
197 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
fittingxiaoli 2019-11-04
  • 打赏
  • 举报
回复
引用 9 楼 yhbear的回复:
[quote=引用 6 楼 AIYY.的回复:]显示函数如下: void pf(int a)//表示传过来的值由形参a接收 { printf("num is %d",a); }
这样的话不能通用啊 比如我写pf(sum),不能输出sum is [/quote] void pf(char s,int a)//表示传过来的值由形参a接收 { printf("%s is %d",s,a);//s可以用来表示传过来的字符, } 你说的那种既想传名称又想传值是不存在的。一个函数不能即传值又传参数名称
Anorak Bear 2019-11-04
  • 打赏
  • 举报
回复
引用 6 楼 AIYY.的回复:
显示函数如下: void pf(int a)//表示传过来的值由形参a接收 { printf("num is %d",a); }
这样的话不能通用啊 比如我写pf(sum),不能输出sum is
Anorak Bear 2019-11-04
  • 打赏
  • 举报
回复
原来如此,我还是用宏吧
Anorak Bear 2019-11-04
  • 打赏
  • 举报
回复
这样啊,这样可能还是麻烦一些,我用宏实现了
fittingxiaoli 2019-11-04
  • 打赏
  • 举报
回复
显示函数如下: void pf(int a)//表示传过来的值由形参a接收 { printf("num is %d",a); }
自信男孩 2019-11-04
  • 打赏
  • 举报
回复 1
在函数里不容易做到,除非把变量名以字符串的形式并且以参数的形式传到自定函数里。

自定义函数有两个参数:参数名和参数值。

因为如果只是传递一个参数,根据参数传递是值传递,所以不会把变量名记下来~
摺耳喵 2019-11-04
  • 打赏
  • 举报
回复
引用 2 楼 yhbear的回复:
[quote=引用 1 楼 qq_45798109的回复:]printf(“num is %d”,num); sum同理
我希望实现通用输出,能单独创建一个函数[/quote] 那你可以把变量名放到一个char数组中,传两个参数,一个传chat数组,一个传int型
  • 打赏
  • 举报
回复
用宏实现:
#define PRINT(x) printf("%s is %d\n", #x, (x))
然后就可以:
int num = 1, sum = 3;
PRINT(num);
PRINT(sum);
Anorak Bear 2019-11-04
  • 打赏
  • 举报
回复
引用 1 楼 qq_45798109的回复:
printf(“num is %d”,num); sum同理
我希望实现通用输出,能单独创建一个函数
摺耳喵 2019-11-04
  • 打赏
  • 举报
回复
printf(“num is %d”,num); sum同理

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧