Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

c´úÂ룺µç»°ºÅÂëºÍ×Öĸת»»

ÕâÁ½Ìì¿´µ½ÓÐÈËÌÖÂ۵绰¼üÅÌÉϵÄ×Öĸ¡¢ºÅÂëºÍ×ÖĸµÄת»»£¬ÎÒÒ²Ëæ±ãдÁËÒ»¶Î
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#define MAX_LEN 15
char *tbl_itoa[] =
{
"0", // 0
"1", // 1
"ABC", // 2
"DEF", // 3
"GHI", // 4
"JKL", // 5
"MNO", // 6
"PQRS", // 7
"TUV", // 8
"WXYZ" // 9
};
int tbl_atoi['Z'-'A'+1] = {0};
void init_tbl()
{
int c;
int i;
for (c='A'; c<='Z'; c++)
{
for (i=0; i<=9; i++)
{
if (strchr(tbl_itoa[i], c) != NULL)
{
tbl_atoi[c-'A'] = i;
break;
}
}
}
#if 0 // DEBUG
for (c='A'; c<='Z'; c++)
{
printf("%c %d\n", (char)c, tbl_atoi[c-'A']);
}
#endif
}
void to_digits(const char *s);
void to_alpha(const char *s);
int is_all_digits(const char *s);
int main(int argc, char *argv[])
{
if (argc < 2)
{
printf("Usage: %s STRING\n", argv[0]);
return 1;
}
if (strlen(argv[1]) > MAX_LEN)
{
printf("string too long. only %d allowed\n", MAX_LEN);
return 1;
}
init_tbl();
if (is_all_digits(argv[1]))
to_alpha(argv[1]);
else
to_digits(argv[1]);
return 0;
}
int is_all_digits(const char *s)
{
char c;
while ((c=*s++) != '\0')
if (!isdigit(c))
return 0;
return 1;
}
void to_digits(const char *s)
{
char c;
while ((c=*s++) != '\0')
{
if (islower(c))
c = toupper(c);
if (isupper(c))
printf("%d", tbl_atoi[(int)(c-'A')]);
else
printf("%c", c);
}
printf("\n");
}
void to_alpha(const char *s)
{
char *p;
static char result[MAX_LEN+2] = {0};
static int idx = 0;
if (!isdigit(*s))
{
result[idx] = '\0';
printf("%s\n", result);
idx--;
return;
}
p = tbl_itoa[(int)(*s-'0')];
while(*p)
{
result[idx++] = *p;
to_alpha(s+1);
p++;
}
idx--;
}


Ïà¹ØÎĵµ£º

C/C++Êý×éÃûÓëÖ¸ÕëÇø±ðÉîÈë̽Ë÷(ת)

 ÒýÑÔ
¡¡¡¡Ö¸ÕëÊÇC/C++ÓïÑÔµÄÌØÉ«£¬¶øÊý×éÃûÓëÖ¸ÕëÓÐÌ«¶àµÄÏàËÆ£¬ÉõÖÁºÜ¶àʱºò£¬Êý×éÃû¿ÉÒÔ×÷ΪָÕëʹÓá£ÓÚÊǺõ£¬ºÜ¶à³ÌÐòÉè¼ÆÕ߾ͱ»¸ãºýÍ¿ÁË¡£¶øÐí¶àµÄ´óѧÀÏʦ£¬ËûÃÇÔÚCÓïÑԵĽÌѧ¹ý³ÌÖÐÒ²´íÎóµÃ¸øÑ§Éú½²½â£º"Êý×éÃû¾ÍÊÇÖ¸Õë"¡£ºÜÐÒÔË£¬ÎҵĴóѧÀÏʦ¾ÍÊÇÆäÖÐÖ®Ò»¡£Ê±ÖÁ½ñÈÕ£¬ÎÒÈÕ¸´Ò»ÈյؽøÐÐ×ÅC/C++ÏîÄ¿µÄ¿ª·¢£¬¶ ......

Keil CÖÐÓÃunsigned longҪעÒâµÄÎÊÌâ

 Keil CÀïÓõ½ÁËunsigned long³¤ÕûÐͱäÁ¿£¬±àÒëʱ¶¼ÄÜͨ¹ý£¬µ«ÔËÐÐʱÀÏÊÇÒç³ö£¬Í¬»ï°Ù¶Èµ½ÁË´ËÌù£¬½â¾öÁËÎÊÌ⣬ÓÚÊÇתÌûÓÚ´Ë£º
½ñÌìµ÷ÊÔÒ»¸ö³Ë·¨£¬³öÁ˵ãÎÊÌ⣬ÏÈ¿´´úÂëʾÒ⣺
void test(void)
{
       unsigned long mid1,mid2,mid3;
       mid1 ......

linuxÏÂCÓïÑÔ¶àÏ̱߳à³ÌʵÀý


À¼´óÂÛ̳ÉϵÄÒ»¸öÌû×Ó¡«¡«
ѧ¶«Î÷£¬ÍùÍùʵÀý²ÅÊÇ×îÈÃÈ˸ÐÐËȤµÄ£¬ÀÏÊÇѧ»ù´¡ÀíÂÛ£¬²»¶¯ÊÖ£¬¸Ð¾õûÓгɾ͸У¬ºÇºÇ¡£
ÏÂÃæÏÈÀ´Ò»¸öʵÀý¡£ÎÒÃÇͨ¹ý´´½¨Á½¸öÏß³ÌÀ´ÊµÏÖ¶ÔÒ»¸öÊýµÄµÝ¼Ó¡£
»òÐíÕâ¸öʵÀýûÓÐʵ¼ÊÔËÓõļÛÖµ£¬µ«ÊÇÉÔ΢¸Ä¶¯Ò»Ï£¬ÎÒÃǾͿÉÒÔÓõ½ÆäËûµØ·½È¥À­¡£
ÏÂÃæÊÇÎÒÃǵĴúÂ룺
/*thread_example.c : c ......

ÔÚLINUXϽøÐÐCÓïÑÔ±à³ÌËùÐèÒªµÄ»ù´¡ÖªÊ¶

 ÕâÆªÎÄÕ½éÉÜÔÚLINUXϽøÐÐCÓïÑÔ±à³ÌËùÐèÒªµÄ»ù´¡ÖªÊ¶.ÔÚÕâÆªÎÄÕµ±ÖÐ,ÎÒÃǽ«»áѧµ½ÒÔÏÂÄÚÈÝ:
Ô´³ÌÐò±àÒë
MakefileµÄ±àд
³ÌÐò¿âµÄÁ´½Ó
³ÌÐòµÄµ÷ÊÔ
Í·ÎļþºÍϵͳÇóÖú
--------------------------------------------------------------------------------
1.Ô´³ÌÐòµÄ±àÒë
ÔÚLinuxÏÂÃæ,Èç¹ûÒª±àÒëÒ»¸öC ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ