[英]What is a char* declaration in arduino?
什么是char *song;
这样的宣言char *song;
*有什么作用? 它是一个数组,指针还是别的什么?
*(星号)表示变量是指针。 至于一个小例子:
int x = 0;
int *y = &x; //y is pointing to x
const char* myText = "Text";
但是,您可能有兴趣学习更多关于指针的内容 。
H2CO3是对的,你应该阅读c和指针。
char *song = "smb:d=4,o=5,b=......."
是否与下面的代码相同
char song[] = "smb:d=4,o=5,b=......."
在这两种情况下,song都是指向字符串数组的指针。 C ++有一个字符串对象,但是普通的C使用了c_strings。 c_string只是一个char数组。 你有一个看起来像c_string的东西。
*song //the same as "song[0]" will equal 's'
*(song+1) //the same as "song[1]" will equal 'm'
*(song+2) //the same as "song[2]" will equal 'b'
等等
是的,星号使它成为一个指针。 好像你已经足够在其他答案中去了,但如果你正在寻找一本好书: http : //cm.bell-labs.com/cm/cs/cbook/
〜克里斯
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.