ÓÃCдµÄ¶ÁÈ¡´úÂëÐÐÊý¡£
½ñÌìÎÞÊ£¬ÔÚÂÛ̳ÉÏÒ»Ö±¿´Ìù×Ó£¬ºÜÉÙ¶¯ÊÖʵ¼ù£¬½ñÌìÊÔ×ÅдÁËÒ»¸ö¶ÁȡԴ³ÌÐò´úÂëÐÐÊýµÄÀý×Ó£º
ÏÖÔڵĴúÂëÈçÏ£¬¿ÉÄÜ»¹Óв»ÍêÉÆµÄµØ·½£¬ÒÔºóÔٸĽø£º
#include <stdio.h>
#define CHARCOUNT 255
#define CON 6 /*µ¥ÐÐ×¢ÊÍ×îÉÙµÄʱºò*/
int realLength = 0;
/*
* function name: strCount
* function : count line number
* created by : lsl
*/
int strCount(int from, char * str)
{
int length = strlen(str), i = 0;
int realCount = length-2-from;
for(i = length-3; str[i]==' ' || str[i] ==' '; i--)
{
realCount--;
}
realLength = realCount;
return realLength;
}
int main(int argc, char *argv[])
{
FILE *fPtr = fopen("tt.c","r");
char buffer[CHARCOUNT];
int lineCount = 0,i=0,j=0,k=0,bufferLen = 0;
int moutLineComment = 0;
if(NULL == fPtr)
{
printf("file open error!\n");
exit(0);
}
while(NULL != fgets(buffer,CHARCOUNT,fPtr))
{
//Èç¹ûÖ»°üº¬Ò»Éϻسµ begin
if(13 == buffer[0] && 10 == buffer[1])
{
//printf("%x%x\n",buffer[0],buffer[1]);
continue;
}
//Èç¹ûÖ»°üº¬Ò»¸ö»Ø³µ end
else
{
bufferLen = strlen(buffer);//¶ÁÈëÐеij¤¶È ËãÉ϶ÁÈëĩβµÄ \n\r
//ÅжÏÒ»ÐÐΪ¿ÕÐеÄÇé¿ö ´ËÐпÉÄܰüº¬Ðí¶à¿Õ¸ñ tab begin
for(i = 0; 32 == buffer[i] || 9 == buffer[i] || 13 == buffer[i] || 10 == buffer[i]; i++ )
{
if(i == bufferLen)
{
break;
}
}
if(bufferLen == i)
{
continue;
}
//ÅжÏÒ»ÐÐΪ¿ÕÐеÄÇé¿ö end
//ÅжÏ//×¢ÊÍ begin
else if(buffer[i] == '/' && buffer[i+1] == '/')
{
continue;
}
//ÅжÏ//×¢ÊÍ end
//Åж϶àÐÐ×¢ÊÍ begin
else if(buffer[i] == '/' && buffer[i+1] == '*')
{
//**/rin tf("here\n");
if((bufferLen-i)>=CON)
{
int tmpLen = strCount(i,buffer);//Çó³ö´ËÐдÓi¿ªÊ¼³ý×îºóµÄ¿Õ¸ñ¡¢\r\nÖ®ÍâµÄ×Ö·ûÊý
if((tmpLen>=4) && buffer[i+tmpLen-2] == '*' && buffer[i+tmpLen-1] == '/')
{
continue;
}
else
{
Ïà¹ØÎĵµ£º
vaϵÁкêµÄÓ÷¨µÄÒ»°ã²½Ö裺
vsptr(char *format, ...) //ÇмǴ˴¦µÄ¸ñʽ
{
va_list argptr;
va_start(argptr, format); //ʹµÃargptrÖ¸ÏòÒÔformat¿ªÍ·µÄ´æ´¢¿Õ¼ä
va_arg(argptr, type); //È¡´«µÝµÄ²ÎÊý
......
C³ÌÐòÊÇÓÉÒ»×é»òÊDZäÁ¿»òÊǺ¯ÊýµÄÍⲿ¶ÔÏó×é³ÉµÄ¡£ º¯ÊýÊÇÒ»¸ö×ÔÎÒ°üº¬µÄÍê³ÉÒ»¶¨Ïà¹Ø¹¦ÄܵÄÖ´ÐдúÂë¶Î¡£ÏÂÃæÐ¡±àºÍ´ó¼Ò·ÖÏíÏÂCÓïÑÔÖеĺ¯Êý¡£
1. gcvtº¯Êý
gcvtº¯ÊýµÄ¹¦ÄÜÊǰѸ¡µãÊýת»»³É×Ö·û´®£¬ÆäÓ÷¨ÊÇ£ºchar *gcvt(double value, int ndigit, char *buf);³ÌÐò ......
C³ÌÐòÊÇÓÉÒ»×é»òÊDZäÁ¿»òÊǺ¯ÊýµÄÍⲿ¶ÔÏó×é³ÉµÄ¡£ º¯ÊýÊÇÒ»¸ö×ÔÎÒ°üº¬µÄÍê³ÉÒ»¶¨Ïà¹Ø¹¦ÄܵÄÖ´ÐдúÂë¶Î¡£ÏÂÃæÐ¡±àºÍ´ó¼Ò·ÖÏíÏÂCÓïÑÔÖеĺ¯Êý¡£
1. harderrº¯Êý
harderrº¯ÊýµÄ¹¦ÄÜÊǽ¨Á¢Ò»¸öÓ²¼þ´íÎó´¦Àí³ÌÐò£¬ÆäÓ÷¨ÊÇ£ºvoid harderr(int (*fptr)());³ÌÐòÀý×ÓÈçÏ£º
#include <stdio.h>
......
ǰÁ½ÌìÔÚÍøÉÏ¿´µ½¡¶Cר¼Ò±à³Ì¡·Õâ±¾ÊéµÄÆÀ¼Û»¹²»´í£¬¾ÍÈ¥ÊéµêÂòÁËÒ»±¾»ØÀ´Åõ¶Á£¬Ã¿ÌìÍíÉÏ¿´Ò»Ð©¡£Ì½ÌÖµÄÎÊÌâȷʵ±È½ÏÉ¶¼ÔÚÌÖÂÛCÓïÑÔ±¾ÉíµÄÎÊÌâÁË¡£Ìáµ½ÁËCÓïÑÔÖеÄһЩ²»×ã¡£±¾À´ÈÏΪCÓïÑÔÊÇÎÞи¿É»÷µÄ£¬¿É´Ó×÷ÕߵĽǶȿ´À´£¬È·ÊµÓÐЩ²»Í׵ĵط½£¬ÏëÏëÒ²ÊÇ£¬ÄÄÓÐÍêÃÀÎÞȱ¶«Î÷ÄØ¡£Æäʵ×÷ÕßÒ²²¢·ÇÔڱᵠ......
5¡¢#defineºê¶¨Òå¡£ºêÖ»ÊǼòµ¥µÄÎı¾Ìæ»»£¬ºÜÈÝÒ×ÒýÆðÆçÒå¡£
#include <stdio.h>
#define CONS(a,b) (int)(a##e##b)
#define STR(s) #s
int main()
{
printf(STR(vck));
printf("\n");
printf("%d\n",CONS(2,3));
return 0; ......