| Windows | COBOL | Data Size | 
| char[n], str[n], tchar[n] | PIC X(n) | n bytes | 
| long, int | PIC X(4) COMP-N or PIC S9(9) COMP-5 | 4 bytes | 
| dword, ulong, lpxxx, float | PIC X(4) COMP-N or PIC 9(9) COMP-5 | 4 bytes | 
| short | PIC X(2) COMP-N or PIC S9(5) COMP-5 | 2 bytes | 
| word, ushort | PIC X(2) COMP-N or PIC 9(5) COMP-5 | 2 bytes | 
We recommend using COMP-N for most cases, although COMP-N data types are HEX, unsigned, and thus difficult for negative numbers.
If you want to use COMP-5, be sure to use the "--TruncANSI" compiler option. This causes truncation in binary to the capacity of the allocated storage for COMP-5 items. (By default, ACUCOBOL-GT truncates in decimal to the number of digits given in the PICTURE clause on arithmetic and non-arithmetic stores into COMP-5 items.) Note that the "-Dz" option overrides "--TruncANSI".
C structure to include:
typedef struct _WIN32_FIND_DATA {  
  DWORD     dwFileAttributes;  
  FILETIME  ftCreationTime;  
  FILETIME  ftLastAccessTime;  
  FILETIME  ftLastWriteTime;  
  DWORD     nFileSizeHigh;  
  DWORD     nFileSizeLow;  
  DWORD     dwReserved0;  
  DWORD     dwReserved1;  
  TCHAR     cFileName[ MAX_PATH ];  
  TCHAR     cAlternateFileName[ 14 ];
} WIN32_FIND_DATA, *PWIN32_FIND_DATA;
            Resulting ACUCOBOL-GT group item:
01 WIN32-FIND-DATA.  
  03 dwFileAttributes   PIC X(4) COMP-N.  
  03 ftCreationTime.    
     05 dwLowCreateDT   PIC X(4) COMP-N.    
     05 dwHighCreateDT  PIC X(4) COMP-N.  
  03 ftLastAccessTime.    
     05 dwLowAccessDT   PIC X(4) COMP-N.    
     05 dwHighAccessDT  PIC X(4) COMP-N.  
  03 ftLastWriteTime.    
     05 dwLowWriteDT    PIC X(4) COMP-N.    
     05 dwHighWriteDT   PIC X(4) COMP-N.  
  03 nFileSizeHigh      PIC X(4) COMP-N.  
  03 nFileSizeLow       PIC X(4) COMP-N.  
  03 dwReserved0        PIC X(4) COMP-N.  
  03 dwReserved1        PIC X(4) COMP-N.  
  03 cFileName          PIC X(260).  
  03 cAlternateFileName PIC X(14).