⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test.c

📁 推荐刚刚开始学C语言的同志们看下
💻 C
字号:
#include <conio.h>
#include <dir.h>
#include <dos.h>
#include <stdio.h>
#include <stdlib.h>

void main ( int argc, char *argv[] )
{
	struct ffblk dta;
	struct dfree disk;
	char pathname [30];
	void far *sys;
	int i, j, base, drive, right;
	long int freedisk, all_file_long = 0, temp;
	if ( argc != 3 )
	{
		printf ( "\nNo PARAMETERS or TOO MANY ");
		printf ( "\nlook source_subname[+subname...]drive" );
		printf ( "\nExamples: " );
		printf ( "\n%s C:\\my\\*.* *c:\\tools\\*.exe a:\n", argv[0]);
		return ;
	}
	if ( argv[2][0] > 'a' && argv[2][0] < 'z' )
	{
		drive = argv[2][0] - 'a';
	}
	else if( argv[2][0] > 'A' && argv[2][0] < 'Z' )
	{
		drive = argv[2][0] - 'a';
	}
	else
	{
		printf ( " 参数输入有误! " );
		return;
	}
	getdfree ( drive+1, &disk );
	base = disk.df_bsec * disk.df_sclus;
	freedisk = disk.df_avail;
	freedisk = freedisk * base;
	i = 0;
	while ( i < strlen ( argv[1] ))
	{
		for ( j = 0; ( argv[1][i] && ( argv [1][i] != '+' )); i ++, j++ )
			pathname [j] = argv [1][i];
		i ++;
		pathname[j] = '\0';
		right = findfirst ( pathname, &dta, 0x16 );
		while ( !right )
		{
			if ( dta.ff_fsize%base )
			{
				temp = dta.ff_fsize;
				all_file_long = all_file_long + (temp/base + 1)*base;
			}
			else
			{
				temp = dta.ff_fsize;
				all_file_long = all_file_long + temp;
			}
			right = findnext ( &dta );
		}
	}
	printf ( "\n Need total space: " );
	printf ( "%12ld Bytes", all_file_long );
	printf ( "\nThe disk left space:" );
	printf ( "%12ld Bytes", freedisk );
	if ( all_file_long <= freedisk )
		printf ("\n\n****** The space is enough ****** " );
	else
		printf ( "\n\n****** Nosuch space to copy these files ******" );
	getch();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -