我很抱歉我的英语不好,但我会试着解释我的问题.使用C,我想输出一个IP地址列表.
但是,当我打开.txt文件时,它看起来是空白的.我也尝试在stderr上打印,但我根本没有输出.有什么问题?似乎for循环没有被执行.
这是代码.(将打印地址从192.168.51.1打印到192.168.51.254)
#include <stdio.h>
#define B1_S 192
#define B1_E 192
#define B2_S 168
#define B2_E 168
#define B3_S 51
#define B3_E 51
#define B4_S 1
#define B4_E 254
#define FNAME "ip.txt"
#define MIN_RANGE 0
#define MAX_RANGE 255
void to_next(int *x);
main()
{
FILE *fp;
int i, j, k, l;
if(fp = fopen(FNAME, "w"))
{
for(i=B1_S; i<=B1_E; to_next(&i))
for(j=B2_S; j<=B2_E; to_next(&j))
for(k=B3_S; j<=B3_E; to_next(&k))
for(l=B4_S; l<=B4_E; to_next(&l))
fprintf(fp, "%d.%d.%d.%d\n", i,j,k,l);
fclose(fp);
}
else
printf("Error opening file.\n");
}
void to_next(int *x)
{
if(*x < MAX_RANGE)
*x+=1;
else
*x = MIN_RANGE;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
88 次 |
| 最近记录: |