× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.


  • Subject: RE: cpystrchar & cpycharstr
  • From: "Bob Crothers" <bob@xxxxxxxxxxxxxx>
  • Date: Wed, 21 Jun 2000 08:43:54 -0500
  • Importance: Normal

Title: RE:

Mike,

 

Below is the code for 2 functions:

 

cpystrchar which copy’s a null terminated string to a char array.  In the process stripping the terminating null and padding the char array with blanks.

 

cpycharstr which goes the other way.  Stripping trailing blanks and inserting a terminating NULL.

 

You would use them as so:

 

Struct myRecord rcd;

Char mystring[31];

 

Cpycharstr(mystring, rcd.DESC, sizeof(rcd.DESC)); /* Copyies from file field DESC which is not null terminated to mystring */

 

Cpystrchar(rcd.DESC, “Some New String”, sizeof(rcd.DESC));

 

Bob

 

And for the code:

 

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * */

/*                                                       */

/* cpystrchar - copy string to character buffer with     */

/*              no terminating NULL                      */

/*                                                       */

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * */

                                                          

void cpystrchar(char *ToBuf, char *FrmString, int Len)    

{                                                         

int x;                                                    

BYTE *ptr;                                                

                                                           

ptr = ToBuf;                                              

                                                          

strncpy(ptr, FrmString, Len);                             

                                                           

if (strlen(FrmString) < Len)                              

  for (x=strlen(FrmString); x<Len; x++)                   

    ptr[x] = ' ';                                         

                                                           

return;                                                   

}

 

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * */

/*                                                       */

/* cpycharstr - copy character buffer to a string.       */

/*                                                       */

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * */

                                                          

void cpycharstr(char *ToBuf, char *FrmBuf, int FrmLen)    

{                                                          

int x;                                                    

                                                          

memcpy(ToBuf, FrmBuf, FrmLen);                            

                                                           

ToBuf[FrmLen] = 0;                                        

                                                          

for (x=strlen(ToBuf) - 1; x >= 0 && ToBuf[x] == ' '; x--) 

  ToBuf[x] = 0;                                            

                                                          

return;                                                   

}                                                         

 

 


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.