[英]Referencing an external msp430 assembly .string in a c extern
对msp430进行编程时,我使用.string
指令声明了一个字符串:
message: .string "Hello World"
我想引用模块外,所以我.def
倒是它:
.def message
message: .string "Hello World"
在C语言中,我想引用字符串,但是得到错误的字符:
extern char* message;
int main(void) {
char c = *message; // First character of message is listed as 'z'
}
关于什么可能导致此的任何想法? 它可以很好地编译,并且我引用的程序集中有几个函数没有问题。
使用extern char message[];
。 当您将其声明为指针时,是说message
是一个仅占用2个字节内存并存储一个地址的值。 当将其声明为char
数组时,您要说的是一个1字节字符的序列,这就是字符串。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.