_MAX_PATH

_MAX_PATH是C語言運行時庫中通過#define指令定義的一個宏常量,它定義了編譯器所支持的最長全路徑名的長度。

_MAX_PATH是C語言運行時庫中通過#define指令定義的一個宏常量,它定義了編譯器所支持的最長全路徑名的長度。
在VC++6.0中, _MAX_PATH的值為260。
所屬庫:stdlib.h
在Windows SDK中,還有一個預定義常量MAX_PATH,和這個常量是一樣的。
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <errno.h>
typedef struct _stat StatusInfo;
#define __STR(const_num) # const_num
#define STR(const_num) __STR(const_num)
int main(void)
{
char filename[_MAX_PATH] = { '\0' };
StatusInfo buf;
StatusInfo *pbuf = &buf;
fputs("Please input file name >>> ", stdout);
scanf("%"STR(_MAX_PATH)"s", filename);
if ( _stat(filename, &buf) != 0 ) {
switch (errno) {
case ENOENT:
fprintf(stderr, "Error: File %s not found.\n", filename);
break;
case EINVAL:
fprintf(stderr, "Error: Invalid parameter to _stat.\n");
break;
default:
fprintf(stderr, "Error: Unexpected error in _stat.\n");
break;
}
return EXIT_FAILURE;
} else {
printf("File size : %ld bytes\n", pbuf->st_size);
printf("Drive : %c:\n", pbuf->st_dev + 'A');

相關詞條

熱門詞條

聯絡我們