aboutsummaryrefslogtreecommitdiff
path: root/C/Named Arguments.wiki
diff options
context:
space:
mode:
authorHugo Hörnquist <hugo@lysator.liu.se>2022-11-14 01:34:24 +0100
committerHugo Hörnquist <hugo@lysator.liu.se>2022-11-14 01:34:24 +0100
commitd634d0040e58f5e8f30dc60761f40892d8a173f2 (patch)
tree7a8e0342c4efcda7b87782d516d4573ccb7874f8 /C/Named Arguments.wiki
parentmån 14 nov 2022 00:26:52 CET (diff)
parenttis 8 nov 2022 09:29:26 CET (diff)
downloadwiki-public-d634d0040e58f5e8f30dc60761f40892d8a173f2.tar.gz
wiki-public-d634d0040e58f5e8f30dc60761f40892d8a173f2.tar.xz
Merge branch 'master' of git.hornquist.se:git/wiki-public
Diffstat (limited to 'C/Named Arguments.wiki')
-rw-r--r--C/Named Arguments.wiki13
1 files changed, 13 insertions, 0 deletions
diff --git a/C/Named Arguments.wiki b/C/Named Arguments.wiki
new file mode 100644
index 0000000..7e673f2
--- /dev/null
+++ b/C/Named Arguments.wiki
@@ -0,0 +1,13 @@
+https://www.reddit.com/r/C_Programming/comments/yjbe62/combining_default_named_and_positional_arguments/
+
+{{{c
+struct fooParam { int x, y; };
+#define foo(...) foo((struct fooParam) {__VA_ARGS__ })
+int (foo)(struct fooParam p) {
+ return p.x + p.y;
+}
+
+int main() {
+ printf("%d\n", foo(.y = 20, .x = 10));
+}
+}}}