| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1375 人关注过本帖
标题:问一个关于函数调用的问题
只看楼主 加入收藏
惧惧
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2016-6-19
结帖率:90.91%
收藏
已结贴  问题点数:20 回复次数:10 
问一个关于函数调用的问题
程序大概是这样的:

读取用户输入的字符串,
调用函数,
结束程序。

这个函数是,在之前就有的结构里找到该字符串所在的结构,将整个结构输出。
(因为不光这么简单,所以要调用一个函数)
那在函数里怎么申明局部变量啊?求解答~
搜索更多相关主题的帖子: 字符串 用户 
2016-09-02 14:50
ehszt
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:40
帖 子:1745
专家分:3216
注 册:2015-12-2
收藏
得分:4 
在函数里声明的变量就是局部变量,变量只在函数内有效。也有在循环内声明变量的,这样的变量只在循环内有效,如for(int i=0;....)
2016-09-02 15:17
惧惧
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2016-6-19
收藏
得分:0 
回复 2楼 ehszt
那如果我申明的是一个字符串,他引用的直接就是main函数里面的字符串了?
2016-09-02 15:22
ehszt
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:40
帖 子:1745
专家分:3216
注 册:2015-12-2
收藏
得分:0 
听不明白,如果变量是在主函数中声明的,子函数想直接用的话是不可能的。
2016-09-02 15:26
linlulu001
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:20
帖 子:944
专家分:4047
注 册:2016-4-13
收藏
得分:8 
一个全局变量a和一个局部变量a,当调用a的时候先使用局部变量(前提是局部变量a的有效范围能内),不会影响到全局变量。
2016-09-02 17:04
鸿蒙之灵
Rank: 4
来 自:异次元裂缝
等 级:贵宾
威 望:11
帖 子:126
专家分:244
注 册:2016-8-22
收藏
得分:5 
将一个字符串从一个函数传递到另一个函数,可以用地址传递的办法,即用字符数组名作参数或用指向字符串的指针变量作参数。

程序代码:
#include <stdafx.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
void f(char *str) {  //字符串作参数
printf(str);
}
char * r() {  //字符串作返回值 
//使用动态分配内存,不要使用局部变量比如
//char buf[80]; 因为局部变量在函数结束时,栈区变量已被回收
char *str = (char *)malloc(256 * sizeof(char)); 
if (str==0) { printf("can't alloc mem\n"); return 0;}
else memset(str, 0x00 ,sizeof(char) * 256);
return str;  //
}
int main()
{
char *pstr = r();
if (pstr!=0) strcpy(pstr, "hello world\n");
f(pstr);
free(pstr);
system("pause");
return 0;
}



输入的操作你可以再进行补充


对待编程,要像对待情人一样
2016-09-02 17:59
惧惧
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2016-6-19
收藏
得分:0 
回复 4楼 ehszt
C语言里子函数能调用函数本身吗?
2016-09-02 18:07
惧惧
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2016-6-19
收藏
得分:0 
回复 6楼 鸿蒙之灵
我们只学了基础的,你的有好多我都不认识。。不懂意思。
2016-09-02 18:09
ehszt
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:40
帖 子:1745
专家分:3216
注 册:2015-12-2
收藏
得分:3 
回复 7楼 惧惧
可以呀,那叫递归。
2016-09-02 18:26
惧惧
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2016-6-19
收藏
得分:0 
回复 9楼 ehszt
好的好的
2016-09-02 18:29
快速回复:问一个关于函数调用的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018098 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved