benim kodİmzasız bir char * dizisini nasıl belirleyebilirim?
#define PRODUCTNAME "SomeName"
tanımlamak aşağıdaki ettim ve bir fonksiyonu com_reply(unsigned char* msg, uint16_t lenght)
ile göndermek istiyorum.
Şimdi, bağımsız değişkenimin farklı olduğunu gösteren bir uyarı alıyorum. Sadece bilmek istiyorum, problemin ne olduğunu ve ayrıca neden com_reply
unsigned char*
yerine char*
kullanır:
Nasıl bir unsigned char*
olarak benim dize yüzden her yerde uyarılar almadan benim program boyunca kullanabilirsiniz tanımlayabilir .
DÜZENLEME: Kesin
Ben kimse burada tanımlar ve temel nedeni bir BANNER
böyle, diğer bazı tanımlayıp oluştuğu tanımlamak olmasıdır fazla olması konuşma:
#define PRODUCTNAME "SomeName"
#define PRODUCTDATE "2013-03-30"
#define BANNER PRODUCTNAME " (" PRODUCTDATE ")"
Oluşturduğum Should const değişkenleri ve bunları tanımlamak yerine program başlangıcında birleştirin mi?
Neden 'const char * PRODUCTNAME = "SomeName"' veya benzeri? (ilgisiz, ancak #define bunun için çok fazla dezavantaja sahip.) –
Standart ne kadar uyumlu olduğunu bilmiyorum, ama ne hakkında: '(const unsigned char *)" SomeName "' – Mysticial
Merak etme, 'com_reply' nedir? işlev yapmak? Aslında bir dize olmamalı, 0 ile 255 arasında bir sayıya işaret eden bir şey gibi görünüyor. – austin