首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

请教static 数组做函数参数

2012-05-07 
请问static 数组做函数参数!将一个字符串中的某个指定的字符删去请问以下主程序中 字符数组 str必须定义为

请问static 数组做函数参数!
将一个字符串中的某个指定的字符删去

请问以下主程序中 字符数组 str必须定义为 static 吗?
不加static 结果也是对的。
file1.c(文件1)
  main( )
  {extern enter_string( );
  extern delete_string ( );
  extern print_string( );  
  char c;
static char str[80];  
enter_string(str);
scanf(“%c”,&c);
delete_string(str,c);
print_string(str);}

file2.c(文件2)
#include ”stdio.h”
extern enter_string(str)  
char str[80];
{gets (str);}

file3.c(文件3)
extern delete_string(str,ch) 
char str[ ],ch;
{int i,j;
for(i=j=0;str[i]!=’\0’;i++)
if(str[i]!=ch)
str[j++]=str[i];
  str[j]=’\0’;  

file4.c(文件4)
  extern print_string(char str[ ])
 { printf(“%s”,str);
  }




[解决办法]
由于你分了四个文件
static的作用是保证变量只在文件内可见
仅此而已
所以对结果没有影响
[解决办法]

探讨
不加static也只是在main()中可见呀。加上static 生存期不同。对吗

热点排行