게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
C++다시 문제에 봉착했네요ㅠ오유성님들 도와주십쇼ㅠ
게시물ID : computer_46613짧은주소 복사하기
작성자 : dadah
추천 : 0
조회수 : 619회
댓글수 : 6개
등록시간 : 2012/05/10 23:26:56
#include <stdio.h>
#include <math.h>
int main(void)
{
// variable
FILE *fin, *fout; // File Pointer
short data; // 16 bit Integer Variable
float x, y, z, n; // for문을 돌리기 위해 변수 n을 지정함.
//file open
fin = fopen("input#1.raw", "rb");
fin = fopen("input#2.raw", "rb");
fout = fopen("demodule.raw", "wb");

// file read

for(n=0 ; ;n++ ) 
{
// input read
if(fread(&data, 2, 1, fin) == NULL) break; 
// conversion to Floating
x = (float)data;// data 는 short 변수이므로 이를 Float로 바꾸어 계산한다. 
y = (float)date;
z = x * cos(2*3.14*9600*n/48000) + y * sin(2*3.14*9600*n/48000); 
// z가 출력이므로 캐리어(cos)를 입력x에 곱한값과 캐리어(sin)을 입력 y에 곱한값을 더함.
// output write
data = (short)z; // 변조된 신호 z를 short 형태로 바꿈
fwrite(&data, 2, 1, fout);
}
fclose(fin);
return 0;
}


입력이 두개인 상황(파일 input#1과 input#2)인데 두개의 파일을 열어서
각각 cos ,sin 값을 곱한후 z에 저장하는 형태인데 파일 입출력에 관한 C코드 개념이
제가 생각햇던 것과 다른가봅니다ㅠ. 위에 처럼 짯는데 되지를 않군요ㅠㅠ
C 능력자 오유성님들 어디가 틀렸나요??ㅠ
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호