在C语言中如何使一个函数使用另一个函数中的变量而与其它的函数无关?

作者&投稿:逄追 (若有异议请与网页底部的电邮联系)
C语言中,我想在一个函数里用另一个函数的变量怎么办??~

已经有人给你那么多方法了。。。我还是建议不要用extern去使全局变量,也不要把变量定义在头文件,然后用include把变量包含进其它源文件使用,不要这样做!这是菜鸟的做法!
正确的做法是这样的,你把变量定义在相应的源文件中,定义成全局的,然后写一个接口去读取,充分利用封装的思想!我举个例子哈:
加入你的变量名是 A,定义在abc.c中。。。
这时候你的正确做法是 在abc.c中写一个函数,命名为 int GetAValue(void) { return A; }

这才是大神的做法!这样的话如果是在同一个源文件中,可以直接访问全局变量达到目的。如果是在不同的源文件的其它函数,就调用你写好的 GetAValue()函数去读取!

已经有人给你那么多方法了。。。我还是建议不要用extern去使全局变量,也不要把变量定义在头文件,然后用include把变量包含进其它源文件使用,不要这样做!这是菜鸟的做法!
正确的做法是这样的,你把变量定义在相应的源文件中,定义成全局的,然后写一个接口去读取,充分利用封装的思想!我举个例子哈:
加入你的变量名是 A,定义在abc.c中。。。
这时候你的正确做法是 在abc.c中写一个函数,命名为 int GetAValue(void) { return A; }

这才是大神的做法!这样的话如果是在同一个源文件中,可以直接访问全局变量达到目的。如果是在不同的源文件的其它函数,就调用你写好的 GetAValue()函数去读取!

这个fp是局部变量,没有办法和其他函数共享,可以使用的解决方法为:
1、声明为全局变量,不过的确不好
2、作为参数传递,这样要增加一个形参

传参数,把fp传给otherprint()

利用 指针 或 返回值 都可以啊! 如果回答对您有用,请及时采纳。


C语言怎么能使一个指针在各个文件间传值
在main.c里把要共用的指针定义成全局的(不能是静态的),比如:Int* p;int main(){...} 另一个文件里用 extern int* p;声明这个指针就行了

在C语言中如何输入使得,输入一个字符,使得输出的是ASCII码?
include <stdio.h> main(){ int c;while((c = getchar())!=EOF){ printf("%d\\n", c);} return 0;} 不用getchar就这样 include <stdio.h> main(){ int c;scanf("%c", &c);while(c!=EOF){ printf("%d\\n", c);scanf("%c", &c);} return 0;} ...

C语言如何定义一个数组,使得数组里的数都大于0
如果是int类型,可以加上unsigned,但如果是double的话你可以在赋值的时候自己判断,做个函数,里面是个if,大于0的都可以,小于0的,强制赋值为0或者1什么的。

C语言中生成1个0到1的随机数要执行什么语句啊?
C语言中生成1个0到1的随机数可以执行语句:float b=rand()\/(RAND_MAX+1.0);解析:标准C库中函数rand()可以生成0~RAND_MAX之间的一个随机数,其中RAND_MAX 是stdlib.h 中定义的一个整数,它与系统有关。rand()函数没有输入参数,直接通过表达式rand()来引用;用函数rand取得的随机数除以(...

在C语言中如何使输入的数值赋值到未知数上
首先从你的表述上看感觉你基础很薄弱,问题是,c语言中数据在输入的时候都要先定义一个变量用来存储用户输入的数据 比如,我要输入一个数字,那么我就要定义一个变量比如这样:int a;然后,我才能调用输入函数scanf(“%d”,&a);来从键盘输入数字,而输入的数字就存放在a里面了。所以,如果需要...

C语言中如何使汉字一个一个的输出
简单写了个例子,仅供参考(注:汉字中有可能有单字节符号):include "stdio.h"include "windows.h"void main(){ char str[] = "你好,你是我的!";char tmp[3] = {0};int i = 0;int len = strlen(str);for(i = 0; i < len; ){ memset(tmp,0,3);if(str[i] >= 0x80...

C语言中如何定义一个符号常量,使其小于100?
要想定义一个符号常量的话,就定义int I 然后再设置这个值小100就可以了。然后根据你设计的一些计算,把这个数值代入就可以计算出来。

如何用C语言编程,使出现一个界面几秒后自动跳到另一个界面;求高手解答...
给个代码你参考下吧,是秒表计时器程序的代码 include <stdio.h> include <conio.h> include <windows.h> include <stdlib.h> struct tm \/\/定义时间结构体,包括时分秒和10毫秒 { int hours,minutes,seconds;int hscd;}time,tmp,total; \/\/time用以计时显示,tmp用以存储上一阶段时间,to...

在c语言中如何定义一个变量,使它的值为一个句子。如果用户输入这个句 ...
你所说的句子是指的字符串吧, C语言中字符串是用字符数组来表示的.include<stdio.h>#include<string.h>int main(){ char s[20]; gets(s); if(strcmp(s, "hello world")==0)\/\/如果输入的是字符串"hello world" printf("right\\n"); else printf("wrong\\n"); return 0;...

C语言中,如何定义一个变量,使其既可以在主函数中使用,也可以在子函数中...
当然,除了定义全局变量这个方法,还有其他的方法,那就是指针。在子函数的参数中传递变量的地址,依然可以使用该变量,依然能够改变该变量的值。因为主函数和子函数的变量共用的是同一个地址的变量,因此,不管在哪个函数中对变量进行操作,都会影响变量。比如下面这个程序,在主函数中a的值为5,将变量a...

会宁县18234722648: C语言中能否在一个自定义函数中调用另一个自定义函数? -
语蝶老鹳: 当然可以! C语言程序的最基本的模块就是函数, 该程序规定:任意函数都可以调用其它任意一个函数,包括函数本身; 1、函数调用自己本身, 这种称为递归; 通过递归,计算1+2+3+...+n值的代码: 2、自定义函数调用其它自定义函数的例子: 这个例子就是主函数调用自定义函数fun2,然后fun2调用另一个自定义函数fun1;

会宁县18234722648: C语言中一个函数中如何反复调用另一个函数? -
语蝶老鹳: void hello() { printf("hello\n"); } void world() { for (int i = 0; i < 10; i++) hello(); printf("world\n"); }

会宁县18234722648: C语言里, 一个函数怎调用,另一个函数的变量(不用返回) -
语蝶老鹳: 像你这个写法是不可能调用的到的 a在函数A里定义,且定义的是局部变量,函数b中不可能直接调用,除非在函数A中调用函数B 然后把a作为参数传递到函数B中. 望采纳.

会宁县18234722648: c语言中如何在一个函数中调用在另个文件中定义的函数
语蝶老鹳: 一、前提条件: 1、两个文件必须编入同一个可执行文件; 2、被调用函数必须是全局函数,即不能是static函数.如果有static修饰,那么必须写在头文件中,并被另一个文件引用. 二、声明: 1、可以声明在头文件中,并在调用文件中引用该头文件; 2、可以直接在调用文件声明,形式为 extern RET_TYPE FUNC_NAME(PARAM_LIST); 其中extern非必须,但一般都会写上,表示这个是其它文件定义的. 三、调用: 声明后,直接调用即可,和本文件函数调用方式并无区别.

会宁县18234722648: 计算机c语言中函数之间如何调用 -
语蝶老鹳: 函数要先声明,后调用,如: #include<stdio.h> //包含头文件,头文件中含有一些函数的定义,包含它,相当于已经声明了下面的Printf函数 int main()//主函数 int sum(int x,int y) //在调用前要先声明,声明可以先不定义函数体,也可以在声...

会宁县18234722648: 如何在c语言中源文件调用另一个源文件的函数 -
语蝶老鹳: file1.c 头文件为file1.h file2.c 头文件为file2.h 比如file2.c要调用file1.c里的一个函数 首先file2.c里要包含file1.h头文件(file1.h里有file1.c的函数申明) 然后file2.c文件里要有file1.c里的外部函数申明,用extern关键字申明 然后就可以直接file2.c里面调用file1.c里的函数了

会宁县18234722648: C语言中.如果编写了一个函数,想在不同源文件中调用. -
语蝶老鹳: 可以的.编辑成EXE文件,用cmd命令调用就可以了

会宁县18234722648: 可以在c语言中的一个非主函数里调用另外一个函数么 -
语蝶老鹳: 完全可以,只要被调用的函数在调用前声明过.

会宁县18234722648: C语言中怎么把上一个函数的值用到下一个函数 -
语蝶老鹳: 你是像这样吗#include <stdio.h> int f1(int x) {return x+10; } int f2(int x) {x=f1(x);return x; } int main() {int a=10;printf("%d\n",f2(a));return 0; }不是很明白你的意思

会宁县18234722648: 在C语言中如何使一个函数使用另一个函数中的变量而与其它的函数无关? -
语蝶老鹳: 这个fp是局部变量,没有办法和其他函数共享,可以使用的解决方法为:1、声明为全局变量,不过的确不好2、作为参数传递,这样要增加一个形参

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网