簡體   English   中英

C中字節和字符的區別

[英]Difference between byte and char in C

我想知道為什么我不能從書中編譯一個例子。 我在這里簡化了示例,以避免從受版權保護的書中發布示例。

#include <stdio.h>

BYTE *data = "data";

int main()
{
     printf("%s", data);
     return 0;
}

用g ++編譯時,我得到錯誤,

error: invalid conversion from 'const char*' to 'BYTE*'

該程序只需用char代替BYTE,但我必須做錯事,因為這個例子來自一本書。

請幫助指出問題所在。 謝謝。

BYTE不是C語言或C標准庫的一部分,因此它完全依賴於系統是否在僅包含標准stdio.h頭文件后定義。

在許多定義BYTE宏的系統上,它通常是unsigned char const char*轉換為unsigned char*需要顯式轉換。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM