• 带参数的main函数(一)


    自己改的程序:
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    
    typedef char BYTE;
    typedef float DWORD;
    
    int main(int argc,char *argv[])
    {
        int i;
        FILE *fp1,*fp2;
    	int aa,bb;
    
    	sscanf(argv[2],"%d",&aa);         //将字符符型改为整型
    	                                   //sscanf函数参见msdn或者百度,google
    	sscanf(argv[3],"%d",&bb);
    
    
        BYTE  *data1=(BYTE *)malloc(aa*bb*sizeof(BYTE));
    	
    	printf("%d\n",aa*bb);     //用于调程序时候查看参数传的是否正确。
    
        DWORD *data2=(DWORD *)malloc(aa*bb*sizeof(DWORD));
        
        if((fp1=fopen(argv[1],"rb"))==NULL)
        {
             printf("can not open file!");
             return 0;
        }
        if((fp2=fopen(argv[4],"w"))==NULL)
        {
            printf("can not open file!");
            return 0;
        }
    
        memset(data1,0,aa*bb*sizeof(BYTE));		/* 初始化 */
        memset(data2,0,aa*bb*sizeof(DWORD));
        
        fread(data1,sizeof(char),aa*bb,fp1);		/* 将fp1里面的内容读入到data1*/
    
        for(i=0;i<aa*bb;i++)
        {
            data2[i]=((int)data1[i])*1.0;							/* data1里面的数据转换为浮点型 */
        }
        
    	for(i=0;i<aa*bb;i++)
    	{
    		if((i%bb)==0)									/* 一行640列 */
    		{
    			if(i==0)											/* 写进去的第一个数字 如果省略,第一行将会多换空白 */
    			{
    				fprintf(fp2,"%-4.0f",data2[i]);
    			}
    			else
    			{
    				fprintf(fp2,"\n",data2[i]);						/*  每640列换行 */
    				fprintf(fp2,"%-4.0f",data2[i]);					/* 换行完还得继续写数据,不能忘记 */
    			}		
    		}
    		else
    		{					
    			fprintf(fp2,"%-4.0f",data2[i]);						/* 再把浮点转换为字符并写入到fp2里面 */
    		}
    	}  
    	    
        fclose(fp1);
        fclose(fp2);
        free(data1);
        free(data2);
        
        return 0;
    }
    
    
     
    
    
  • 相关阅读:
    OOAD基本概念
    WEB开发中常用的正则表达式
    一像素的恩怨情仇!程序猿与设计狮之间的那些事儿
    技术负责人的三种角色
    Ping命令详解
    zip命令的用法
    U盘装系统系列三—-ghost系统安装教程
    U盘装系统系列二—-如何设置U盘启动
    U盘装系统系列一—-安装老毛桃U盘启动制作工具
    Vi命令详解
  • 原文地址:https://www.cnblogs.com/zerocc/p/1909647.html
Copyright © 2020-2023  润新知