看板 C_and_CPP 關於我們 聯絡資訊
我知道他是代表字元 但若寫成'data' 這要怎解釋呢? 我自己跑看看 auto temp = ('data'); int num = 0; char*ptr = (char*)&num; *ptr = 'a'; ptr++; *ptr = 't'; ptr++; *ptr = 'a'; ptr++; *ptr = 'd'; 發現兩者是相同的 很好奇他怎解釋'data' 今天看到某人寫的wave writer.. 他在header的地方用 #ifndef FCC #define FCC(ch4) ((((DWORD)(ch4) & 0xFF) << 24) | \ (((DWORD)(ch4) & 0xFF00) << 8) | \ (((DWORD)(ch4) & 0xFF0000) >> 8) | \ (((DWORD)(ch4) & 0xFF000000) >> 24)) #endif DWORD header[] = { // RIFF header FCC('RIFF'), 0, FCC('WAVE'), // Start of 'fmt ' chunk FCC('fmt '), cbFormat }; 覺得相當酷炫 不過'RIFF'這種寫法是不是標準的寫法... 我從這寫法 知道 可以一次把4 byte大小的資料 一口氣用DWORD打包寫出去 還是這是很common的作法? 因為我google ''都只有在講他是 字元 這種答案... 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.163.58.205
azureblaze:compiler-defined behavior 01/21 17:26
uranusjr:http://bbs.csdn.net/topics/370071859 01/21 17:28
uranusjr:我記得前幾天某個人才在某篇推文裡提到這件事XD 01/21 17:28
loveme00835:warning 打開來吧... 01/22 00:12