我的一位朋友今天发给我这个代码:
#include <stdio.h>
int main()
{
char *s = { "one", "two", "three", "four", "five" };
puts(s);
}
它的输出是:
one
据我所知,像"one"
这样的字符串被翻译为C中的地址,它们是常量。因此,"one", "two", "three", "four", "five"
由于其中的逗号运算符而等于"five"
。因此{ "one", "two", "three", "four", "five" }
不应该等于{ "five" }
,创建char *s="five"
?
答案 0 :(得分:1)
此代码中的任何位置都没有逗号运算符。相反,逗号是初始化列表中的分隔符。
编译器会将char指针初始化为列表中的第一个文字,并在初始化程序&#34;中发出类似&#34;多余元素的警告,表示列表中的其余元素已被丢弃。
正如评论中已经提到的,你朋友的意图可能是
var dataSource = new DevExpress.data.DataSource({
store: [/* your data */],
filter: [/* your filter */]
});
$("#list").dxList({
// list options
dataSource: dataSource
});
给出s [0] =&#34;一个&#34;,s [1] =&#34;两个&#34;等等。