用C 讀txt 檔把它轉成HTML
用C 讀txt 檔把它轉成HTML我找很久都找不到哪邊有錯誤 , 可以編譯成exe檔 , 但開啟後會發生錯誤
我猜應該是內存問題吧,,,應該是指針哪邊誤用 , 希望有人可以找出是哪邊有問題
謝謝大家
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
main(int argc, char *argv[])
{
FILE *fp;
char *ch;
char *chr_doc;
fp = fopen(argv,"r");
while ((ch = fgetc(fp)) != EOF)
{
strcat(chr_doc, &ch);
}
fclose(fp);
int i = 0, int_bwd = 0, int_swd = 0, int_intsy = 0, int_othersy = 0, int_ascii = 0, int_allcount = 0;
int int_cword = 0;
for (i = 0; i < strlen(chr_doc); i++)
{
int_ascii = (int)chr_doc;
if (int_ascii == 0)
{
break;
}
if (int_ascii >= 65 && int_ascii <= 90)
{
int_bwd++;
}
if (int_ascii >= 97 && int_ascii <= 122)
{
int_swd++;
}
if (int_ascii >= 48 && int_ascii <= 57)
{
int_intsy++;
}
if (int_ascii < 0)
{
int_cword++;
i++;
}
}
int_othersy = strlen(chr_doc) - int_bwd - int_swd - int_intsy - (int_cword * 2) - 1;
fp = fopen(argv, "w");
fprintf(fp, "<html>\n");
fprintf(fp, "<head>\n");
fprintf(fp, "<title>处理结果</title>\n");
fprintf(fp, "</head>\n");
fprintf(fp, "\n<b>中文字共<font color=blue> %d </font>字<br>", int_cword);
fprintf(fp, "\n大写字母共<font color=blue> %d </font>字<br>", int_bwd);
fprintf(fp, "\n小写字母共<font color=blue> %d </font>字<br>", int_swd);
fprintf(fp, "\n数字共<font color=blue> %d </font>字<br>", int_intsy);
fprintf(fp, "\n符号共<font color=blue> %d </font>字<br>", int_othersy);
fprintf(fp, "<br><font color=green>横条图:</font><br>");
fprintf(fp, "<table border = 0>");
fprintf(fp, "<tr><td>中文字数");
fprintf(fp, "</td>");
fprintf(fp, "<td>");
for (i = 0; i < int_cword * 2; i++)
{
fprintf(fp, "<img src = \"img.gif\">");
}
fprintf(fp, "<b> %d</b>", int_cword);
fprintf(fp, "</td></tr>");
fprintf(fp, "<tr><td>大写字数");
fprintf(fp, "</td>");
fprintf(fp, "<td>");
for (i = 0; i < int_bwd * 2; i++)
{
fprintf(fp, "<img src = \"img.gif\">");
}
fprintf(fp, "<b> %d</b>", int_bwd);
fprintf(fp, "</td></tr>");
fprintf(fp, "<tr><td>小写字数");
fprintf(fp, "</td>");
fprintf(fp, "<td>");
for (i = 0; i < int_swd * 2; i++)
{
fprintf(fp, "<img src = \"img.gif\">");
}
fprintf(fp, "<b> %d</b>", int_swd);
fprintf(fp, "</td></tr>");
fprintf(fp, "<tr><td>数字字数");
fprintf(fp, "</td>");
fprintf(fp, "<td>");
for (i = 0; i < int_intsy * 2; i++)
{
fprintf(fp, "<img src = \"img.gif\">");
}
fprintf(fp, "<b> %d</b>", int_intsy);
fprintf(fp, "</td></tr>");
fprintf(fp, "<tr><td>符号字数");
fprintf(fp, "</td>");
fprintf(fp, "<td>");
for (i = 0; i < int_othersy * 2; i++)
{
fprintf(fp, "<img src = \"img.gif\">");
}
fprintf(fp, "<b> %d</b>", int_othersy);
fprintf(fp, "</td></tr>");
fprintf(fp, "</table>");
fprintf(fp, "</body>\n");
fclose(fp);
printf("档案已输出至 %s !!", argv);
}
页:
[1]