示例#1
0
_WCRTLINK char *getcwd( char *buf, size_t size )
{
    int drive;
    char *p;
    char cwd[256];

    if( buf == NULL ) {
        size = 256;
        p = lib_malloc( size );
    } else {
        p = buf;
    }

    drive = RdosGetCurDrive();

    cwd[0] = drive + 'A';
    cwd[1] = DRV_SEP;
    cwd[2] = DIR_SEP;

    if( RdosGetCurDir( drive, &cwd[3] ) ) {
        return( strncpy( p, cwd, size ) );
    } else {
        return( NULL );
    }
}
示例#2
0
_WCRTLINK CHAR_TYPE *getcwd( CHAR_TYPE *buf, size_t size )
{
    int drive;
    char *p;
    char cwd[256];

    if( buf == NULL ) {
        size = 256;
        p = lib_malloc( size );
    }
    else
        p = buf;

    drive = RdosGetCurDrive();

    cwd[0] = drive + 'A';
    cwd[1] = ':';
    cwd[2] = '\\';

    if( RdosGetCurDir( drive, &cwd[3] ) )
        return( strncpy( p, cwd, size ) );
    else
        return( NULL );
}