home *** CD-ROM | disk | FTP | other *** search
-
- /* d4seek_d.c (c)Copyright Sequiter Software Inc., 1987-1990. All rights reserved.
-
- Locates and reads the record.
-
- Returns
-
- 0 Success
- 1 Inexact Find
- 2 On record after
- 3 EOF
- -1 Error
- */
-
- #include "d4all.h"
- #include "u4error.h"
-
- extern INDEX *v4index ;
-
-
- int d4seek_double( double d )
- {
- INDEX *index_ptr ;
- int index_ref ;
-
- if ( (index_ref = i4seek_ref()) < 0 )
- {
- u4error( E_NO_INDEX, d4name(), (char *) 0 ) ;
- return( -1 ) ;
- }
-
- index_ptr= v4index+ index_ref ;
-
- #ifdef CLIPPER
- {
- char seek_buf[32] ;
-
- if ( index_ptr->i_type == 'N' || index_ptr->i_type == 'F' )
- {
- c4dtok( index_ref, d, seek_buf ) ;
- return( d4seek_key( index_ref, seek_buf) ) ;
- }
- else
- {
- if ( index_ptr->i_type == 'D' )
- {
- c4dt_str( seek_buf, &d ) ;
- return( d4seek_key( index_ref, seek_buf) ) ;
- }
- else
- return 3 ;
- }
- }
- #else
- if ( index_ptr->i_type == 'C' )
- return 3 ;
- else
- return( d4seek_key( index_ref, (char *) &d) ) ;
- #endif
- }
-
-
-
-