以下のコードですが開始バイトと終了バイトを指定してその分の文字列をchar型配列に格納したいのですがなぜ文字化けするのでしょうか?
そもそものやり方が間違えている場合どうすればいいのでしょうか?
4バイトの場合は参考サイトですが1バイトの場合はまた違うのでしょうか?
バイナリデータの中はwavファイルで先頭の4バイトの"RIFF"文字を取り出したいです。
やりたいこと「
Headerにwavファイルのチャンクを入指定してstart end で読み始めと読み終を指定するとその分の文字列を返す。
」
参考サイト: https://teratail.com/questions/314799
cpp
1 2#define HEADER_SIZE 44 3char* convString(unsigned char* header, int start,int end) 4{ 5 int n = end - start; 6 char ret[HEADER_SIZE] = { "\n" }; 7 8 for (int i = 0; i < n; i++) { 9 ret[i] = header[start + i]; 10 11 } 12 13 ret[n] = '\n'; 14 //ret[0] = 'a'; 15 16 17 return ret; 18} 19
回答3件
あなたの回答
tips
プレビュー