VAL只认识前面的数字,碰到字母等,后面的忽略了 val("24A8")=24 所以:332+val("24A8")=332+24=356 再问: 那为什么在vfp9.0的输出答案会是356.00呢? 再答: 系统默认显示两位小数 如果你想改变显示小数位数: 设置显示小数点位数:set DECIMALS to 数字 比如: set DECIMALS to 0 332+val("24A8")=356 set DECIMALS to && 不带数字就是默认的两位小数 332+val("24A8")=356.00 set DECIMALS to 4 332+val("24A8")=356.0000 set DECIMALS to 6 332+val("24A8")=356.000000