| Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) | 
![]()  | 
	
| 		
			
			 | 
		#1 | 
| 
			
			 初级会员 
			
			
			
			注册日期: 2009-04-30 
				
				年龄: 43 
				
					帖子: 2
				 
				
				
				声望力: 0 ![]()  | 
	
	
	
		
		
			
			 
			
			fread(fid,[M,N], precision); M/N的值我从文件头读出来赋给int16,但用fread时报错,说fread不支持int16... 
		
		
		
		
		
		
		
	请问遇到上述情况该如何处理?  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 		
			
			 | 
		#2 | 
| 
			
			 高级会员 
			
			
			
			注册日期: 2008-11-07 
				住址: 湖南长沙 
				
				
					帖子: 233
				 
				
				
				声望力: 22 ![]()  | 
	
	
	
		
		
			
			 
			
			那就多写两句话,把M、N单独赋值就可以噻
		 
		
		
		
		
		
		
			
				__________________ 
		
		
		
		
	坚持就是胜利,努力就有奇迹。  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 		
			
			 | 
		#3 | 
| 
			
			 初级会员 
			
			
			
			注册日期: 2009-04-30 
				
				年龄: 43 
				
					帖子: 2
				 
				
				
				声望力: 0 ![]()  | 
	
	
	
		
		
			
			 
			
			多谢laosam280. 
		
		
		
		
		
		
		
	问题是: Fft = fread(FileHand,1,'bit16=>short'); BinNum = fread(FileHand,1,'bit16=>short'); DspToDpDat = fread(FileHand,[Fft,BinNum],'float32'); Fft和BinNum分别为68和15,运行报错为: ‘Function 'fread' is not defined for values of class 'int16'.’ 如直接给两者分别赋值为68和15,运行无问题。 请问,fread(fid,[M,N], precision); M/N必须是常量吗?  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 |