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

¶ÔC/C++¿É±ä²ÎÊý±íµÄÉî²ã̽Ë÷

2005-09-12 09:16
×÷ÕߣºËᦻª
³ö´¦£ºÌì¼«Íø
ÔðÈα༭£º·½ÖÛ
¡¡¡¡º¯Êýmax¿´ÆðÀ´¼ò½àÃ÷ÁË£¬µ«ÊÇʵ¼ÊÉÏprintfµÄʵÏÖÈ´Ô¶±ÈÕ⸴ÔÓ¡£maxº¯ÊýÖ®ËùÒÔ¿´ÆðÀ´¼òµ¥£¬ÊÇÒòΪ£º
¡¡¡¡(1) maxº¯Êý¿É±ä²ÎÊý±íµÄ³¤¶ÈÊÇÒÑÖªµÄ£¬Í¨¹ýnum²ÎÊý´«È룻
¡¡¡¡(2) maxº¯Êý¿É±ä²ÎÊý±íÖвÎÊýµÄÀàÐÍÊÇÒÑÖªµÄ£¬¶¼ÎªintÐÍ¡£
¡¡¡¡¶øprintfº¯ÊýÔòûÓÐÕâôÐÒÔË¡£Ê×ÏÈ£¬printfº¯Êý¿É±ä²ÎÊýµÄ¸öÊý²»ÄÜÇáÒ׵ĵõ½£¬¶ø¿É±ä²ÎÊýµÄÀàÐÍÒ²²»Êǹ̶¨µÄ£¬ÐèÓɸñʽ×Ö·û´®½øÐÐʶ±ð£¨ÓÉ%f¡¢%d¡¢%sµÈÈ·¶¨£©£¬Òò´ËÔòÉæ¼°µ½¿É±ä²ÎÊý±íµÄ¸ü¸´ÔÓÓ¦Óá£
¡¡¡¡ÏÂÃæÎÒÃÇÒÔʵÀýÀ´·ÖÎö¿É±ä²ÎÊý±íµÄ¸ß¼¶Ó¦Óá£
¸ß¼¶Ó¦ÓÃ
¡¡¡¡ÏÂÃæÕâ¸ö³ÌÐòÊÇÎÒÃÇΪijǶÈëʽϵͳ£¨¸ÃϵͳÖÐCPUµÄ×Ö³¤Îª16룩±àдµÄÔÚÆÁÄ»ÉÏÏÔʾ¸ñʽ×Ö·û´®µÄº¯Êý
DrawText£¬ËüµÄÓ÷¨ÀàËÆÓÚint printf ( const char *format, ...
)º¯Êý£¬µ«ÆäÊä³öµÄÄ¿±êΪǶÈëʽϵͳµÄÒº¾§ÏÔʾÆÁÄ»£¨LED£©¡£
///////////////////////////////////////////////////////////////////////////////
// º¯ÊýÃû³Æ: DrawText
// ¹¦ÄÜ˵Ã÷: ÔÚÏÔʾÆÁÉÏ»æÖÆÎÄ×Ö
// ²ÎÊý˵Ã÷: xPos ---ºá×ø±êµÄλÖà [0 .. 30]
// yPos ---×Ý×ø±êµÄλÖà [0 .. 64]
// ... ¿ÉÒÔͬÊý×ÖÒ»ÆðÏÔʾ£¬ÐèÉèÖñêÖ¾(%d¡¢%l¡¢%x¡¢%s)
///////////////////////////////////////////////////////////////////////////////
extern void DrawText ( BYTE xPos, BYTE yPos, LPBYTE lpStr, ... )
{
¡¡BYTE lpData[100]; //»º³åÇø
¡¡BYTE byIndex;
¡¡BYTE byLen;
¡¡DWORD dwTemp;
¡¡WORD wTemp;
¡¡int i;
¡¡va_list lpParam;
¡¡memset( lpData, 0, 100);
¡¡byLen = strlen( lpStr );
¡¡byIndex = 0;
¡¡va_start ( lpParam, lpStr );
¡¡for ( i = 0; i < byLen; i++ )
¡¡{
¡¡¡¡if( lpStr[i] != ’%’ ) //²»ÊǸñʽ·û¿ªÊ¼
¡¡¡¡{
¡¡¡¡¡¡lpData[byIndex++] = lpStr[i];
¡¡¡¡}
¡¡¡¡else
¡¡¡¡{
¡¡¡¡¡¡switch (lpStr[i+1])
¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡//ÕûÐÍ
¡¡¡¡¡¡¡¡case ’d’:
¡¡¡¡¡¡¡¡case ’D’:
¡¡¡¡¡¡¡¡¡¡wTemp = va_arg ( lpParam, int );
¡¡¡¡¡¡¡¡¡¡byIndex += IntToStr( lpData+byIndex, (DWORD)wTemp );
¡¡¡¡¡¡¡¡¡¡i++;
¡¡¡¡¡¡¡¡¡¡break;
¡¡¡¡¡¡¡¡¡¡//³¤ÕûÐÍ
¡¡¡¡¡¡¡¡case ’l’:
¡¡¡¡¡¡¡¡case ’L’:
¡¡¡¡¡¡¡¡¡¡dwTemp = va_arg ( lpParam, long );
¡¡¡¡¡¡¡¡¡¡byIndex += IntToStr ( lpData+byIndex,


Ïà¹ØÎĵµ£º

C×Ö·û´®²Ù×÷º¯ÊýÔ´Âë

 
#ifndef _PPC_BOOT_STRING_H_
#define _PPC_BOOT_STRING_H_
#include <stddef.h>
extern char *strcpy(char *dest, const char *src);
extern char *strncpy(char *dest, const char *src, size_t n);
extern char *strcat(char *dest, const char *src);
extern int strcmp(const char *s1, const cha ......

³ÌÐò¸ßÊֱضÁ£ºÐ´ºÃC³ÌÐòµÄ10ÌõÃØ¼®

 ¡¡¡¡ÉñºõÆä¼¼£¬Î©C³ÌÐò£¬¹¦µ½×Գɣ¬Ê®´ó½¨Ò飡
¡¡¡¡1¡¢ÈêӦƵ·±´ß¶¯lint¹¤¾ß£¬¾ÝÆäÓï·¨ÉùÃ÷ÐÞϰÄÚÁ¦£¬´ËʽÔÒòlint֮˼ÂǾö¶ÏʵԶÔÚ¾ýÉÏ¡£
¡¡¡¡
¡¡¡¡2¡¢²»¿ÉÒÀËæNULLÖ¸Õ룬ÈçÈô²»È»£¬»ìãç³Õµß±ØÙ¹¾ýÓڱ˰¶¡£
¡¡¡¡
¡¡¡¡3¡¢×ÝÓÐÌ츳´óÖǻۣ¬ÖªÏþÆäÊÂÎÞ°­£¬ÈêÒ൱¾¡ÊýÇ¿ÖÆÅ²ÒÆº¯Êý²ÎÊýΪԭÐÍËùÆÚÖ®Êý¾ÝÀàÐÍ£¬ÒÔÃâÒ» ......

¿ªÊ¼¶Á¡¶Cר¼Ò±à³Ì¡·

    ǰÁ½ÌìÔÚÍøÉÏ¿´µ½¡¶Cר¼Ò±à³Ì¡·Õâ±¾ÊéµÄÆÀ¼Û»¹²»´í£¬¾ÍÈ¥ÊéµêÂòÁËÒ»±¾»ØÀ´Åõ¶Á£¬Ã¿ÌìÍíÉÏ¿´Ò»Ð©¡£Ì½ÌÖµÄÎÊÌâȷʵ±È½ÏÉ¶¼ÔÚÌÖÂÛCÓïÑÔ±¾ÉíµÄÎÊÌâÁË¡£Ìáµ½ÁËCÓïÑÔÖеÄһЩ²»×ã¡£±¾À´ÈÏΪCÓïÑÔÊÇÎÞи¿É»÷µÄ£¬¿É´Ó×÷ÕߵĽǶȿ´À´£¬È·ÊµÓÐЩ²»Í׵ĵط½£¬ÏëÏëÒ²ÊÇ£¬ÄÄÓÐÍêÃÀÎÞȱ¶«Î÷ÄØ¡£Æäʵ×÷ÕßÒ²²¢·ÇÔڱᵠ......

C/C++——С±à̸CÓïÑÔº¯ÊýÄÇЩÊÂ(14)

C³ÌÐòÊÇÓÉÒ»×é»òÊDZäÁ¿»òÊǺ¯ÊýµÄÍⲿ¶ÔÏó×é³ÉµÄ¡£ º¯ÊýÊÇÒ»¸ö×ÔÎÒ°üº¬µÄÍê³ÉÒ»¶¨Ïà¹Ø¹¦ÄܵÄÖ´ÐдúÂë¶Î¡£ÏÂÃæÐ¡±àºÍ´ó¼Ò·ÖÏíÏÂCÓïÑÔÖеĺ¯Êý¡£
 
1.       normvideoº¯Êý
 
mallocº¯ÊýµÄ¹¦ÄÜÊÇÑ¡ÔñÕý³£ÁÁ¶È×Ö·û£¬ÆäÓ÷¨Îª£ºvoid normvideo(void);³ÌÐòʵÀýÈçÏ£º
#include < ......

C¿É±ä²ÎÊýº¯Êý ʵÏÖ

 Cº¯ÊýÒªÔÚ³ÌÐòÖÐÓõ½ÒÔÏÂÕâЩºê:
void va_start( va_list arg_ptr, prev_param );
type va_arg( va_list arg_ptr, type );
void va_end( va_list arg_ptr );
va_list:ÓÃÀ´±£´æºêva_start¡¢va_argºÍva_endËùÐèÐÅÏ¢µÄÒ»ÖÖÀàÐÍ¡£ÎªÁË·ÃÎʱ䳤²ÎÊýÁбíÖеIJÎÊý£¬±ØÐëÉùÃ÷
      & ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ