- 积分
 - 91
 
	- 贡献
 -  
 
	- 精华
 
	- 在线时间
 -  小时
 
	- 注册时间
 - 2014-2-27
 
	- 最后登录
 - 1970-1-1
 
 
 
 
 
 
 | 
	
 
Fortran
| 系统平台: | 
IVF2011 VS2011  | 
 
| 问题概况: | 
一个很简短的把二进制IP地址转化成10进制的小程序 
用的IVF2011装在了VS2011上 WIN8.1的系统 
麻烦大家能看一下 最好能赐教一下为什么IVF不像CVF那样,出错了会把错误定位到那一行???  | 
 
| 问题截图: | 
   | 
 
| 我看过提问的智慧: | 
看过  | 
 
| 自己思考时长(天): | 
1  | 
 
 
 
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册 
 
 
 
x
 
PROGRAM NUMBER 
IMPLICIT NONE 
CHARACTER(LEN=15)::IP_ADDRESS_DEC,F 
CHARACTER(LEN=32)::IP_ADDRESS_BIN 
IP_ADDRESS_BIN='11010101011111011011000010000011' 
IP_ADDRESS_DEC=F(IP_ADDRESS_BIN) 
PRINT*,IP_ADDRESS_DEC 
END PROGRAM NUMBER 
! 
FUNCTION F(X) RESULT(G) 
IMPLICIT NONE 
CHARACTER(LEN=1)::TMP,DOT='.' 
CHARACTER(LEN=15)::G 
CHARACTER(LEN=3)::DEC 
CHARACTER(LEN=32)::X 
INTEGER::I,J,M,N,D,ZERO,TEMP 
G=' ' 
ZERO=ICHAR('0')    !ZERO=48 
M=0 
N=0 
DO I=1,4 
 TEMP=0 
 DO J=1,8 
  TMP=X(J+M*8:J+M*8) 
  D=ICHAR(TMP)-ZERO 
  TEMP=TEMP*2+D 
 ENDDO 
 M=M+1 
 DEC='000' 
 DO J=3,1,-1 
  D=MOD(TEMP,10) 
  DEC(J:J)=CHAR(D+ZERO) 
  TEMP=TEMP/10 
 ENDDO 
 DO J=1,3 
  G(J+N*4:J+N*4)=DEC(J:J) 
 ENDDO 
 IF(I<4) G(J+N*4,J+N*4)=DOT 
 N=N+1 
ENDDO 
END FUNCTION F 
! 
! 
下面是编译出来的错误信息: 
错误 1  error #6410: This name has not been declared as an array or a function.   [G] C:\Users\\Desktop\shijinzhi_erjinzhi\shijinzhi_erjinzhi\Source1.f90  
错误 2  error #6303: The assignment operation or the binary expression operation is invalid for the data types of the two operands.   [DOT] C:\Users\\Desktop\shijinzhi_erjinzhi\shijinzhi_erjinzhi\Source1.f90  
 
错误 3 Compilation Aborted (code 1) C:\Users\雄\Desktop\shijinzhi_erjinzhi\shijinzhi_erjinzhi\Source1.f90 1  
 
 
求大家能看一下  真的是小白  不会弄了 
 
 |   
 
 
 
 |