This question already has answers here:
What does dot (.) mean in a struct initializer?

(4 个回答)


6年前关闭。




我在 Pebble watch 应用程序开发教程中遇到了以下代码:
// Set handlers to manage the elements inside the Window
  window_set_window_handlers(s_main_window, (WindowHandlers) {
    .load = main_window_load,
    .unload = main_window_unload
  });

我无法理解这个分配给 .load 和 .unload。这是标准C吗?我想我以前从未见过类似的语法。

最佳答案

这是标准的 c99。

它结合了复合文字

 (WindowHandlers) {}

和指定的初始化程序
.load = main_window_load,
.unload = main_window_unload

关于c - 这个点语法在 Pebble watch 开发教程中是什么意思?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26949319/

10-11 21:00