
请教C语言高手!!!
请问当我采用FILE*fp;charfn[20];scanf("%s",fn);fp=fopen(fn,"w");建立一个文件时,它的文件名为什么只能支持8位,也就是说当...
请问当我采用
FILE *fp;
char fn[20];
scanf("%s",fn);
fp=fopen(fn,"w");
建立一个文件时,它的文件名为什么只能支持8位,也就是说当我输入0123456789时,它只会默认取前面的8位作为文件名;
请问有没有什么办法改掉它?
还有一个问题是 我想从一个字符数组中去出一连串的数字作为整型使用,我该怎样做?
也就是我想将fn[20]="ddd12345678ffff"中的12345678取出来作为一个整型数字使用,我该怎样做?
多谢先!!! 展开
FILE *fp;
char fn[20];
scanf("%s",fn);
fp=fopen(fn,"w");
建立一个文件时,它的文件名为什么只能支持8位,也就是说当我输入0123456789时,它只会默认取前面的8位作为文件名;
请问有没有什么办法改掉它?
还有一个问题是 我想从一个字符数组中去出一连串的数字作为整型使用,我该怎样做?
也就是我想将fn[20]="ddd12345678ffff"中的12345678取出来作为一个整型数字使用,我该怎样做?
多谢先!!! 展开
展开全部
找个支持长文件名的编译器吧
==============================
while(*str) {
if(*str >= '0'&& *str <= '9')
toReturn = toReturn * 10 + *str - '0';
else if(toReturn > 0) break;
else;
str++;
}
==============================
while(*str) {
if(*str >= '0'&& *str <= '9')
toReturn = toReturn * 10 + *str - '0';
else if(toReturn > 0) break;
else;
str++;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询