Talk About Network

Google


Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > C > Convert native ...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 1 of 57 Topic 25165 of 27670
Post > Topic >>

Convert native character string to ASCII array of integers

by =?ISO-8859-1?Q?Tom=E1s_=D3_h=C9ilidhe?= <toe@[EMAIL PROTECTED] > Mar 28, 2008 at 04:19 AM

Given a string in the computer's native character set such as:

    "Hello"

, I want to convert it to an array of integers representing the ASCII
values of the characters. The reason I want to do this is that I'll be
passing the ASCII array to a cryptographic hash function. In order to
make my program fully ****table so that it will run properly on
machines where the default character set isn't ASCII, I've created a
MakeASCII function.

Please my MakeASCII function! Rip it apart!

typedef char unsigned OctetStorage;

void MakeASCII(OctetStorage *pos,char const *pc)
{
    for( ; ; ++pos,++pc)
    {
        switch (*pc)
        {
        case ' ': *pos = 0x20u; break;
        case '!': *pos = 0x21u; break;
        case '\"': *pos = 0x22u; break;
        case '#': *pos = 0x23u; break;
        case '$': *pos = 0x24u; break;
        case '%': *pos = 0x25u; break;
        case '&': *pos = 0x26u; break;
        case '\'': *pos = 0x27u; break;
        case '(': *pos = 0x28u; break;
        case ')': *pos = 0x29u; break;
        case '*': *pos = 0x2Au; break;
        case '+': *pos = 0x2Bu; break;
        case ',': *pos = 0x2Cu; break;
        case '-': *pos = 0x2Du; break;
        case '.': *pos = 0x2Eu; break;
        case '/': *pos = 0x2Fu; break;
        case '0': *pos = 0x30u; break;
        case '1': *pos = 0x31u; break;
        case '2': *pos = 0x32u; break;
        case '3': *pos = 0x33u; break;
        case '4': *pos = 0x34u; break;
        case '5': *pos = 0x35u; break;
        case '6': *pos = 0x36u; break;
        case '7': *pos = 0x37u; break;
        case '8': *pos = 0x38u; break;
        case '9': *pos = 0x39u; break;
        case ':': *pos = 0x3Au; break;
        case ';': *pos = 0x3Bu; break;
        case '<': *pos = 0x3Cu; break;
        case '=': *pos = 0x3Du; break;
        case '>': *pos = 0x3Eu; break;
        case '?': *pos = 0x3Fu; break;
        case '@[EMAIL PROTECTED]
': *pos = 0x40u; break;
        case 'A': *pos = 0x41u; break;
        case 'B': *pos = 0x42u; break;
        case 'C': *pos = 0x43u; break;
        case 'D': *pos = 0x44u; break;
        case 'E': *pos = 0x45u; break;
        case 'F': *pos = 0x46u; break;
        case 'G': *pos = 0x47u; break;
        case 'H': *pos = 0x48u; break;
        case 'I': *pos = 0x49u; break;
        case 'J': *pos = 0x4Au; break;
        case 'K': *pos = 0x4Bu; break;
        case 'L': *pos = 0x4Cu; break;
        case 'M': *pos = 0x4Du; break;
        case 'N': *pos = 0x4Eu; break;
        case 'O': *pos = 0x4Fu; break;
        case 'P': *pos = 0x50u; break;
        case 'Q': *pos = 0x51u; break;
        case 'R': *pos = 0x52u; break;
        case 'S': *pos = 0x53u; break;
        case 'T': *pos = 0x54u; break;
        case 'U': *pos = 0x55u; break;
        case 'V': *pos = 0x56u; break;
        case 'W': *pos = 0x57u; break;
        case 'X': *pos = 0x58u; break;
        case 'Y': *pos = 0x59u; break;
        case 'Z': *pos = 0x5Au; break;
        case '[': *pos = 0x5Bu; break;
        case '\\': *pos = 0x5Cu; break;
        case ']': *pos = 0x5Du; break;
        case '^': *pos = 0x5Eu; break;
        case '_': *pos = 0x5Fu; break;
        case '`': *pos = 0x60u; break;
        case 'a': *pos = 0x61u; break;
        case 'b': *pos = 0x62u; break;
        case 'c': *pos = 0x63u; break;
        case 'd': *pos = 0x64u; break;
        case 'e': *pos = 0x65u; break;
        case 'f': *pos = 0x66u; break;
        case 'g': *pos = 0x67u; break;
        case 'h': *pos = 0x68u; break;
        case 'i': *pos = 0x69u; break;
        case 'j': *pos = 0x6Au; break;
        case 'k': *pos = 0x6Bu; break;
        case 'l': *pos = 0x6Cu; break;
        case 'm': *pos = 0x6Du; break;
        case 'n': *pos = 0x6Eu; break;
        case 'o': *pos = 0x6Fu; break;
        case 'p': *pos = 0x70u; break;
        case 'q': *pos = 0x71u; break;
        case 'r': *pos = 0x72u; break;
        case 's': *pos = 0x73u; break;
        case 't': *pos = 0x74u; break;
        case 'u': *pos = 0x75u; break;
        case 'v': *pos = 0x76u; break;
        case 'w': *pos = 0x77u; break;
        case 'x': *pos = 0x78u; break;
        case 'y': *pos = 0x79u; break;
        case 'z': *pos = 0x7Au; break;
        case '{': *pos = 0x7Bu; break;
        case '|': *pos = 0x7Cu; break;
        case '}': *pos = 0x7Du; break;
        case '~': *pos = 0x7Eu; break;

        case 0: *pos = 0; return;

        default: *pos = *pc;
        }
    }
}
 




 57 Posts in Topic:
Convert native character string to ASCII array of integers
=?ISO-8859-1?Q?Tom=E1s_=D  2008-03-28 04:19:52 
Re: Convert native character string to ASCII array of integers
Richard Heathfield <rj  2008-03-28 11:46:25 
Re: Convert native character string to ASCII array of integers
=?ISO-8859-1?Q?Tom=E1s_=D  2008-03-28 06:09:28 
Re: Convert native character string to ASCII array of integers
Richard Heathfield <rj  2008-03-28 13:32:06 
Re: Convert native character string to ASCII array of integers
Willem <willem@[EMAIL   2008-03-28 13:56:50 
Re: Convert native character string to ASCII array of integers
Richard Heathfield <rj  2008-03-28 14:08:40 
Re: Convert native character string to ASCII array of integers
Willem <willem@[EMAIL   2008-03-28 14:13:09 
Re: Convert native character string to ASCII array of integers
Richard Heathfield <rj  2008-03-28 14:26:02 
Re: Convert native character string to ASCII array of integers
Chris Dollin <chris.do  2008-03-28 14:10:40 
Re: Convert native character string to ASCII array of integers
Philip Potter <pgp@[EM  2008-03-28 14:00:16 
Re: Convert native character string to ASCII array of integers
=?ISO-8859-1?Q?Tom=E1s_=D  2008-03-28 06:18:16 
Re: Convert native character string to ASCII array of integers
vippstar@[EMAIL PROTECTED  2008-03-28 07:19:55 
Re: Convert native character string to ASCII array of integers
Richard <devr_@[EMAIL   2008-03-28 15:19:55 
Re: Convert native character string to ASCII array of integers
=?ISO-8859-1?Q?Tom=E1s_=D  2008-03-28 10:54:11 
Re: Convert native character string to ASCII array of integers
CBFalconer <cbfalconer  2008-03-28 15:59:40 
Re: Convert native character string to ASCII array of integers
Morris Dovey <mrdovey@  2008-03-28 18:45:56 
Re: Convert native character string to ASCII array of integers
=?ISO-8859-1?Q?Tom=E1s_=D  2008-03-28 19:48:28 
Re: Convert native character string to ASCII array of integers
Peter Nilsson <airia@[  2008-03-28 20:43:18 
Re: Convert native character string to ASCII array of integers
CBFalconer <cbfalconer  2008-03-28 23:00:38 
Re: Convert native character string to ASCII array of integers
santosh <santosh.k83@[  2008-03-29 10:20:02 
Re: Convert native character string to ASCII array of integers
CBFalconer <cbfalconer  2008-03-29 10:27:44 
Re: Convert native character string to ASCII array of integers
santosh <santosh.k83@[  2008-03-29 22:36:21 
Re: Convert native character string to ASCII array of integers
Richard Heathfield <rj  2008-03-29 17:13:36 
Re: Convert native character string to ASCII array of integers
=?ISO-8859-1?Q?Tom=E1s_=D  2008-03-29 03:28:06 
Re: Convert native character string to ASCII array of integers
Philip Potter <pgp@[EM  2008-03-29 11:25:35 
Re: Convert native character string to ASCII array of integers
=?ISO-8859-1?Q?Tom=E1s_=D  2008-03-29 03:28:51 
Re: Convert native character string to ASCII array of integers
=?ISO-8859-1?Q?Tom=E1s_=D  2008-03-29 06:18:45 
Re: Convert native character string to ASCII array of integers
gordonb.iiloq@[EMAIL PROT  2008-03-29 21:15:18 
Re: Convert native character string to ASCII array of integers
CBFalconer <cbfalconer  2008-03-29 23:56:51 
Re: Convert native character string to ASCII array of integers
Morris Dovey <mrdovey@  2008-03-29 08:33:28 
Re: Convert native character string to ASCII array of integers
Richard <devr_@[EMAIL   2008-03-29 14:39:47 
Re: Convert native character string to ASCII array of integers
Richard <devr_@[EMAIL   2008-03-29 14:44:23 
Re: Convert native character string to ASCII array of integers
=?ISO-8859-1?Q?Tom=E1s_=D  2008-03-29 06:59:50 
Re: Convert native character string to ASCII array of integers
=?ISO-8859-1?Q?Tom=E1s_=D  2008-03-29 07:08:38 
Re: Convert native character string to ASCII array of integers
Richard <devr_@[EMAIL   2008-03-29 16:06:25 
Re: Convert native character string to ASCII array of integers
=?ISO-8859-1?Q?Tom=E1s_=D  2008-03-29 09:00:27 
Re: Convert native character string to ASCII array of integers
Richard <devr_@[EMAIL   2008-03-29 17:04:54 
Re: Convert native character string to ASCII array of integers
Harald van =?UTF-8?b?RMSz  2008-03-29 18:18:32 
Re: Convert native character string to ASCII array of integers
=?ISO-8859-1?Q?Tom=E1s_=D  2008-03-29 16:01:43 
Re: Convert native character string to ASCII array of integers
Ian Collins <ian-news@  2008-03-30 12:53:08 
Re: Convert native character string to ASCII array of integers
=?ISO-8859-1?Q?Tom=E1s_=D  2008-03-29 17:40:27 
Re: Convert native character string to ASCII array of integers
Ian Collins <ian-news@  2008-03-30 13:45:48 
Re: Convert native character string to ASCII array of integers
lawrence.jones@[EMAIL PRO  2008-03-30 17:43:06 
Re: Convert native character string to ASCII array of integers
CBFalconer <cbfalconer  2008-03-30 21:04:48 
Re: Convert native character string to ASCII array of integers
lawrence.jones@[EMAIL PRO  2008-03-31 12:39:15 
Re: Convert native character string to ASCII array of integers
CBFalconer <cbfalconer  2008-03-31 16:13:36 
Re: Convert native character string to ASCII array of integers
=?ISO-8859-1?Q?Tom=E1s_=D  2008-03-29 17:57:25 
Re: Convert native character string to ASCII array of integers
santosh <santosh.k83@[  2008-03-30 06:41:59 
Re: Convert native character string to ASCII array of integers
Richard <devr_@[EMAIL   2008-03-30 03:02:36 
Re: Convert native character string to ASCII array of integers
CBFalconer <cbfalconer  2008-03-29 23:55:14 
Re: Convert native character string to ASCII array of integers
CBFalconer <cbfalconer  2008-03-29 23:59:52 
Re: Convert native character string to ASCII array of integers
Harald van =?UTF-8?b?RMSz  2008-03-30 07:55:55 
Re: Convert native character string to ASCII array of integers
CBFalconer <cbfalconer  2008-03-30 08:56:06 
Re: Convert native character string to ASCII array of integers
Richard Heathfield <rj  2008-03-30 15:40:22 
Re: Convert native character string to ASCII array of integers
CBFalconer <cbfalconer  2008-03-30 11:02:47 
Re: Convert native character string to ASCII array of integers
Richard Heathfield <rj  2008-03-30 21:28:27 
Re: Convert native character string to ASCII array of integers
Harald van =?UTF-8?b?RMSz  2008-03-30 16:45:10 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Fri Oct 10 21:50:42 CDT 2008.