Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.c > #95408 > unrolled thread
| Started by | fir <profesor.fir@gmail.com> |
|---|---|
| First post | 2016-10-30 05:42 -0700 |
| Last post | 2016-11-03 03:58 -0700 |
| Articles | 20 on this page of 410 — 25 participants |
Back to article view | Back to comp.lang.c
usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-10-30 05:42 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-10-30 17:17 +0000
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-10-31 11:02 -0700
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-10-30 12:13 -0700
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-10-30 12:52 -0700
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-10-30 13:38 -0700
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-10-30 14:32 -0700
Re: usecases of void foo(char **b) {} "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-10-30 13:49 -0700
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-10-30 14:04 -0700
Re: usecases of void foo(char **b) {} "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-10-30 14:14 -0700
Re: usecases of void foo(char **b) {} "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-10-30 14:20 -0700
Re: usecases of void foo(char **b) {} "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-10-30 14:23 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-10-31 13:40 +0000
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-01 01:45 +0000
Re: usecases of void foo(char **b) {} Tim Rentsch <txr@alumni.caltech.edu> - 2016-11-01 07:55 -0700
Re: usecases of void foo(char **b) {} mark.bluemel@gmail.com - 2016-11-01 08:07 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-01 16:55 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-01 11:58 -0700
Re: usecases of void foo(char **b) {} John Bode <jfbode1029@gmail.com> - 2016-11-01 12:34 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-01 12:49 -0700
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-01 20:13 +0000
Re: usecases of void foo(char **b) {} Tim Rentsch <txr@alumni.caltech.edu> - 2016-11-02 12:45 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-02 20:37 +0000
Re: usecases of void foo(char **b) {} Tim Rentsch <txr@alumni.caltech.edu> - 2016-11-15 10:50 -0800
Re: usecases of void foo(char **b) {} David Brown <david.brown@hesbynett.no> - 2016-10-31 12:37 +0100
Re: usecases of void foo(char **b) {} "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-10-31 06:01 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-10-31 11:11 -0700
Re: usecases of void foo(char **b) {} Ike Naar <ike@iceland.freeshell.org> - 2016-10-31 01:26 +0000
Re: usecases of void foo(char **b) {} "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-10-30 12:49 -0700
Re: usecases of void foo(char **b) {} "Pascal J. Bourguignon" <pjb@informatimago.com> - 2016-10-31 14:16 +0100
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-10-31 14:20 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-10-31 14:55 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-10-31 08:10 -0700
Re: usecases of void foo(char **b) {} "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-10-31 08:27 -0700
Re: usecases of void foo(char **b) {} John Bode <jfbode1029@gmail.com> - 2016-10-31 09:12 -0700
Re: usecases of void foo(char **b) {} "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-10-31 09:20 -0700
Re: usecases of void foo(char **b) {} "Pascal J. Bourguignon" <pjb@informatimago.com> - 2016-11-05 04:24 +0100
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-10-31 16:35 +0000
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-10-31 09:59 -0700
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-10-31 17:04 +0000
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-10-31 12:16 -0700
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-10-31 19:19 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-01 08:31 -0700
Re: usecases of void foo(char **b) {} Jerry Stuckle <jstucklex@attglobal.net> - 2016-11-01 22:07 -0400
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-02 01:55 -0700
Re: usecases of void foo(char **b) {} Jerry Stuckle <jstucklex@attglobal.net> - 2016-11-02 09:18 -0400
Re: usecases of void foo(char **b) {} David Brown <david.brown@hesbynett.no> - 2016-11-02 15:45 +0100
Re: usecases of void foo(char **b) {} luser droog <luser.droog@gmail.com> - 2016-11-02 07:48 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-02 07:58 -0700
Re: usecases of void foo(char **b) {} luser droog <luser.droog@gmail.com> - 2016-11-02 08:05 -0700
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-02 17:17 +0000
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-02 10:37 -0700
Re: usecases of void foo(char **b) {} David Brown <david.brown@hesbynett.no> - 2016-11-02 20:38 +0100
Re: usecases of void foo(char **b) {} "Pascal J. Bourguignon" <pjb@informatimago.com> - 2016-11-05 04:37 +0100
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-05 14:12 -0700
Re: usecases of void foo(char **b) {} "Pascal J. Bourguignon" <pjb@informatimago.com> - 2016-11-07 00:37 +0100
Re: usecases of void foo(char **b) {} Jerry Stuckle <jstucklex@attglobal.net> - 2016-11-02 11:03 -0400
Re: usecases of void foo(char **b) {} John Bode <jfbode1029@gmail.com> - 2016-10-31 11:20 -0700
Re: usecases of void foo(char **b) {} "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-10-31 11:24 -0700
Re: usecases of void foo(char **b) {} John Bode <jfbode1029@gmail.com> - 2016-11-01 09:02 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-01 16:27 +0000
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-01 17:46 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-01 11:46 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-01 19:41 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-01 13:10 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-01 20:50 +0000
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-01 21:04 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-01 22:22 +0000
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-01 22:54 +0000
Re: usecases of void foo(char **b) {} John Bode <jfbode1029@gmail.com> - 2016-11-02 07:02 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-02 18:53 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-02 12:24 -0700
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-02 20:12 +0000
Re: usecases of void foo(char **b) {} John Bode <jfbode1029@gmail.com> - 2016-11-02 13:21 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-02 21:11 +0000
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-01 14:46 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-01 15:28 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-02 02:32 -0700
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-01 15:26 -0700
Re: usecases of void foo(char **b) {} John Bode <jfbode1029@gmail.com> - 2016-11-01 15:55 -0700
Re: usecases of void foo(char **b) {} Tim Rentsch <txr@alumni.caltech.edu> - 2016-11-02 12:53 -0700
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-01 16:39 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-01 16:55 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-02 02:21 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-02 05:02 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-02 12:58 +0000
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-02 08:03 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-02 08:14 -0700
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-02 09:19 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-02 17:54 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-02 11:47 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-02 19:01 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-02 12:28 -0700
Re: usecases of void foo(char **b) {} Tim Rentsch <txr@alumni.caltech.edu> - 2016-11-12 13:36 -0800
Re: usecases of void foo(char **b) {} Ian Collins <ian-news@hotmail.com> - 2016-11-13 11:07 +1300
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-12 22:27 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-12 14:49 -0800
Re: usecases of void foo(char **b) {} Tim Rentsch <txr@alumni.caltech.edu> - 2016-11-15 10:23 -0800
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-12 14:47 -0800
Re: usecases of void foo(char **b) {} Tim Rentsch <txr@alumni.caltech.edu> - 2016-11-15 10:05 -0800
Re: usecases of void foo(char **b) {} Jerry Stuckle <jstucklex@attglobal.net> - 2016-11-12 17:06 -0500
Re: usecases of void foo(char **b) {} Gareth Owen <gwowen@gmail.com> - 2016-11-02 19:35 +0000
Re: usecases of void foo(char **b) {} John Bode <jfbode1029@gmail.com> - 2016-11-01 13:12 -0700
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-01 13:37 -0700
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-01 09:45 -0700
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-10-31 18:33 +0000
Re: usecases of void foo(char **b) {} John Bode <jfbode1029@gmail.com> - 2016-10-31 11:41 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-10-31 18:51 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-01 08:43 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-01 16:14 +0000
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-10-31 16:04 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-10-31 16:22 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-10-31 23:45 +0000
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-10-31 16:58 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-10-31 17:11 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-01 01:27 +0000
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-01 02:31 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-01 02:41 -0700
Re: usecases of void foo(char **b) {} asetofsymbols@gmail.com - 2016-11-01 03:15 -0700
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-01 11:14 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-01 11:30 +0000
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-01 12:10 +0000
Re: usecases of void foo(char **b) {} Jerry Stuckle <jstucklex@attglobal.net> - 2016-11-01 11:23 -0400
Re: usecases of void foo(char **b) {} jameskuyper@verizon.net - 2016-11-01 09:33 -0700
Re: usecases of void foo(char **b) {} Jerry Stuckle <jstucklex@attglobal.net> - 2016-11-01 22:16 -0400
Re: usecases of void foo(char **b) {} jameskuyper@verizon.net - 2016-11-01 20:36 -0700
Re: usecases of void foo(char **b) {} Jerry Stuckle <jstucklex@attglobal.net> - 2016-11-02 09:20 -0400
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-02 09:02 -0700
Re: usecases of void foo(char **b) {} James Kuyper <jameskuyper@verizon.net> - 2016-11-03 22:09 -0400
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-01 17:37 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-01 11:59 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-01 05:51 -0700
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-01 06:26 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-01 07:32 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-01 15:37 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-01 08:50 -0700
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-01 09:05 -0700
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-01 17:48 +0000
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-01 12:38 -0700
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-01 22:55 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-02 00:04 +0000
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-02 02:06 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-02 10:05 +0000
Re: usecases of void foo(char **b) {} John Bode <jfbode1029@gmail.com> - 2016-11-02 08:07 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-02 08:45 -0700
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-02 09:17 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-02 19:10 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-02 12:55 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-02 20:13 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-02 13:37 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-02 19:18 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-02 13:04 -0700
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-02 20:54 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-02 22:31 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-02 23:53 +0000
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-03 08:41 -0700
Re: usecases of void foo(char **b) {} John Bode <jfbode1029@gmail.com> - 2016-11-02 14:05 -0700
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-02 16:17 -0700
Re: usecases of void foo(char **b) {} Ian Collins <ian-news@hotmail.com> - 2016-11-03 17:31 +1300
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-03 08:20 -0700
Re: usecases of void foo(char **b) {} Ian Collins <ian-news@hotmail.com> - 2016-11-04 07:59 +1300
Re: usecases of void foo(char **b) {} David Brown <david.brown@hesbynett.no> - 2016-11-04 09:53 +0100
Re: usecases of void foo(char **b) {} Ian Collins <ian-news@hotmail.com> - 2016-11-04 22:32 +1300
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-04 07:57 -0700
Re: usecases of void foo(char **b) {} David Brown <david.brown@hesbynett.no> - 2016-11-04 16:47 +0100
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-04 09:09 -0700
Re: usecases of void foo(char **b) {} David Brown <david.brown@hesbynett.no> - 2016-11-04 18:04 +0100
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-04 12:27 -0700
Re: usecases of void foo(char **b) {} David Brown <david.brown@hesbynett.no> - 2016-11-05 14:42 +0100
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-05 14:04 -0700
Re: usecases of void foo(char **b) {} David Brown <david.brown@hesbynett.no> - 2016-11-06 17:29 +0100
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-06 18:42 -0800
Re: usecases of void foo(char **b) {} Tim Rentsch <txr@alumni.caltech.edu> - 2016-11-15 10:51 -0800
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-15 12:16 -0800
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-15 12:34 -0800
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-15 13:27 -0800
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-15 13:43 -0800
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-15 14:02 -0800
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-15 15:01 -0800
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-15 16:00 -0800
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-15 17:06 -0800
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-15 22:49 -0800
Re: usecases of void foo(char **b) {} jameskuyper@verizon.net - 2016-11-16 04:30 -0800
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-16 08:37 -0800
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-16 09:34 -0800
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-16 09:49 -0800
Re: usecases of void foo(char **b) {} jameskuyper@verizon.net - 2016-11-16 10:27 -0800
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-17 13:03 -0800
Re: usecases of void foo(char **b) {} raltbos@xs4all.nl (Richard Bos) - 2016-11-18 09:08 +0000
Re: usecases of void foo(char **b) {} Tim Rentsch <txr@alumni.caltech.edu> - 2016-11-16 10:31 -0800
Re: usecases of void foo(char **b) {} Ian Collins <ian-news@hotmail.com> - 2016-11-05 08:14 +1300
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-02 21:43 +0000
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-02 16:16 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-03 00:05 +0000
Re: usecases of void foo(char **b) {} Gareth Owen <gwowen@gmail.com> - 2016-11-03 06:07 +0000
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-03 01:59 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-03 02:19 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-03 03:25 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-03 10:51 +0000
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-03 11:58 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-03 12:26 +0000
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-03 13:05 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-03 14:50 +0000
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-03 15:00 +0000
Re: usecases of void foo(char **b) {} David Brown <david.brown@hesbynett.no> - 2016-11-03 16:27 +0100
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-03 08:38 -0700
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-03 09:07 -0700
Re: usecases of void foo(char **b) {} David Brown <david.brown@hesbynett.no> - 2016-11-04 10:00 +0100
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-03 09:00 -0700
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-03 16:29 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-03 16:43 +0000
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-03 17:14 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-03 17:23 +0000
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-03 18:18 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-03 18:38 +0000
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-03 18:42 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-03 18:56 +0000
Re: usecases of void foo(char **b) {} John Bode <jfbode1029@gmail.com> - 2016-11-03 12:15 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-03 20:26 +0000
Re: usecases of void foo(char **b) {} John Bode <jfbode1029@gmail.com> - 2016-11-03 13:55 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-03 21:58 +0000
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-03 19:46 +0000
Re: usecases of void foo(char **b) {} "Mr. Man-wai Chang" <toylet.toylet@gmail.com> - 2016-11-04 02:46 +0800
[OT] "Mr. Man-wai Chang" <toylet.toylet@gmail.com> - 2016-11-04 11:59 +0800
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-03 12:14 -0700
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-03 15:27 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-03 08:45 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-03 16:33 +0000
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-03 09:57 -0700
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-03 12:12 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-04 02:02 +0000
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-04 11:15 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-04 12:12 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-04 13:52 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-04 15:28 +0000
Re: usecases of void foo(char **b) {} Gareth Owen <gwowen@gmail.com> - 2016-11-04 17:17 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-04 19:04 +0000
Re: usecases of void foo(char **b) {} Thiago Adams <thiago.adams@gmail.com> - 2016-11-04 12:34 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-04 20:20 +0000
Re: usecases of void foo(char **b) {} Gareth Owen <gwowen@gmail.com> - 2016-11-05 14:52 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-05 15:42 +0000
Re: usecases of void foo(char **b) {} jameskuyper@verizon.net - 2016-11-05 11:40 -0700
Re: usecases of void foo(char **b) {} Gareth Owen <gwowen@gmail.com> - 2016-11-05 21:24 +0000
Re: usecases of void foo(char **b) {} Gareth Owen <gwowen@gmail.com> - 2016-11-05 21:23 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-05 21:58 +0000
Re: usecases of void foo(char **b) {} jameskuyper@verizon.net - 2016-11-05 15:57 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-05 17:00 -0700
Re: usecases of void foo(char **b) {} Gareth Owen <gwowen@gmail.com> - 2016-11-06 19:59 +0000
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-04 17:48 +0000
Re: usecases of void foo(char **b) {} asetofsymbols@gmail.com - 2016-11-04 12:55 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-04 20:30 +0000
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-04 21:13 +0000
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-04 15:13 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-04 22:37 +0000
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-04 17:02 -0700
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-04 16:19 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-04 22:58 +0000
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-05 02:14 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-05 11:13 +0000
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-05 14:23 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-05 15:38 +0000
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-05 16:13 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-05 17:01 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-05 14:04 -0700
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-05 23:01 +0000
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-05 16:20 -0700
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-05 23:46 +0000
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-06 08:26 -0800
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-05 18:41 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-05 23:57 +0000
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-06 00:48 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-06 02:12 +0000
Re: usecases of void foo(char **b) {} Ian Collins <ian-news@hotmail.com> - 2016-11-06 16:52 +1300
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-06 12:02 +0000
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-06 11:02 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-06 11:45 +0000
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-06 12:51 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-06 14:19 +0000
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-06 14:49 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-06 15:49 +0000
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-06 15:57 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-06 16:31 +0000
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-06 17:40 +0000
Re: usecases of void foo(char **b) {} Thiago Adams <thiago.adams@gmail.com> - 2016-11-06 10:16 -0800
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-06 19:18 +0000
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-06 19:40 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-06 20:12 +0000
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-06 21:01 +0000
Re: usecases of void foo(char **b) {} Ian Collins <ian-news@hotmail.com> - 2016-11-07 20:42 +1300
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-07 08:17 +0000
Re: usecases of void foo(char **b) {} Ian Collins <ian-news@hotmail.com> - 2016-11-07 22:27 +1300
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-07 12:37 +0000
Re: usecases of void foo(char **b) {} Ian Collins <ian-news@hotmail.com> - 2016-11-08 11:12 +1300
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-08 00:09 +0000
Re: usecases of void foo(char **b) {} Ian Collins <ian-news@hotmail.com> - 2016-11-08 13:46 +1300
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-06 13:10 -0800
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-06 21:22 +0000
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-06 21:44 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-06 21:58 +0000
Re: usecases of void foo(char **b) {} jameskuyper@verizon.net - 2016-11-06 14:11 -0800
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-06 22:47 +0000
Re: usecases of void foo(char **b) {} "James R. Kuyper" <jameskuyper@verizon.net> - 2016-11-06 18:14 -0500
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-07 01:36 +0000
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-07 00:49 +0000
Re: usecases of void foo(char **b) {} "James R. Kuyper" <jameskuyper@verizon.net> - 2016-11-07 11:32 -0500
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-07 09:28 -0800
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-07 10:49 -0800
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-06 22:37 +0000
Re: usecases of void foo(char **b) {} jameskuyper@verizon.net - 2016-11-06 14:02 -0800
Re: usecases of void foo(char **b) {} John Bode <jfbode1029@gmail.com> - 2016-11-07 10:57 -0800
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-07 21:55 +0000
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-07 22:38 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-07 23:49 +0000
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-08 00:02 +0000
Re: usecases of void foo(char **b) {} "James R. Kuyper" <jameskuyper@verizon.net> - 2016-11-07 19:21 -0500
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-08 00:25 +0000
Re: usecases of void foo(char **b) {} John Bode <jfbode1029@gmail.com> - 2016-11-08 07:02 -0800
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-08 15:49 +0000
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-08 16:03 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-08 08:10 -0800
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-08 16:31 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-08 18:15 +0000
Re: usecases of void foo(char **b) {} Robert Wessel <robertwessel2@yahoo.com> - 2016-11-09 23:32 -0600
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-08 08:04 -0800
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-06 20:54 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-06 13:02 -0800
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-06 12:53 -0800
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-11-06 21:06 +0000
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-06 21:36 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-06 14:06 -0800
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-07 00:39 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-06 18:12 -0800
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-06 19:18 -0800
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-07 10:55 +0000
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-07 12:00 -0800
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-07 22:01 +0000
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-07 21:03 -0800
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-08 10:26 +0000
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-08 06:34 -0800
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-08 08:06 -0800
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-08 08:35 -0800
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-08 11:26 -0800
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-08 11:58 -0800
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-08 12:10 -0800
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-08 12:35 -0800
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-08 13:27 -0800
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-08 21:39 +0000
Re: usecases of void foo(char **b) {} supercat@casperkitty.com - 2016-11-08 13:55 -0800
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-08 16:44 -0800
Re: usecases of void foo(char **b) {} Gareth Owen <gwowen@gmail.com> - 2016-11-07 18:54 +0000
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-06 13:27 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-06 12:59 -0800
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-06 21:35 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-06 13:56 -0800
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-06 22:01 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-06 14:33 -0800
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-06 14:08 -0800
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-06 22:32 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-06 23:00 +0000
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-07 01:02 +0000
Re: usecases of void foo(char **b) {} Ian Collins <ian-news@hotmail.com> - 2016-11-05 12:16 +1300
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-05 01:32 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-04 19:13 -0700
Re: usecases of void foo(char **b) {} Ian Collins <ian-news@hotmail.com> - 2016-11-05 16:34 +1300
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-05 11:29 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-05 14:09 -0700
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-04 20:49 +0000
Re: usecases of void foo(char **b) {} asetofsymbols@gmail.com - 2016-11-05 02:06 -0700
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-04 09:05 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-04 17:05 +0000
Re: usecases of void foo(char **b) {} asetofsymbols@gmail.com - 2016-11-03 15:08 -0700
Re: usecases of void foo(char **b) {} Gareth Owen <gwowen@gmail.com> - 2016-11-03 20:21 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-03 20:35 +0000
Re: usecases of void foo(char **b) {} Gareth Owen <gwowen@gmail.com> - 2016-11-03 21:47 +0000
Re: usecases of void foo(char **b) {} Gareth Owen <gwowen@gmail.com> - 2016-11-03 21:48 +0000
Re: usecases of void foo(char **b) {} John Bode <jfbode1029@gmail.com> - 2016-11-03 08:02 -0700
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-03 18:09 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-03 18:48 +0000
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-03 19:53 +0000
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-03 20:52 +0000
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-03 23:09 +0000
Re: usecases of void foo(char **b) {} John Bode <jfbode1029@gmail.com> - 2016-11-04 07:08 -0700
Re: usecases of void foo(char **b) {} James Kuyper <jameskuyper@verizon.net> - 2016-11-03 22:24 -0400
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-01 11:50 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-11-01 16:28 +0000
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-01 05:07 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-01 05:18 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-01 05:30 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-11-01 05:38 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-10-31 16:47 -0700
Re: usecases of void foo(char **b) {} "Pascal J. Bourguignon" <pjb@informatimago.com> - 2016-11-05 04:11 +0100
Re: usecases of void foo(char **b) {} Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-11-05 10:48 +0000
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-05 14:06 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-10-31 17:38 +0000
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-10-31 17:44 +0000
Re: usecases of void foo(char **b) {} "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-10-31 11:04 -0700
Re: usecases of void foo(char **b) {} BartC <bc@freeuk.com> - 2016-10-31 19:12 +0000
Re: usecases of void foo(char **b) {} Richard Heathfield <rjh@cpax.org.uk> - 2016-10-31 19:18 +0000
Re: usecases of void foo(char **b) {} "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-10-31 10:53 -0700
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-11-01 08:25 -0700
Re: usecases of void foo(char **b) {} Keith Thompson <kst-u@mib.org> - 2016-10-31 08:05 -0700
Re: usecases of void foo(char **b) {} John Bode <jfbode1029@gmail.com> - 2016-10-31 08:27 -0700
Re: usecases of void foo(char **b) {} John Bode <jfbode1029@gmail.com> - 2016-10-31 07:59 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-10-31 10:36 -0700
Re: usecases of void foo(char **b) {} John Bode <jfbode1029@gmail.com> - 2016-10-31 11:36 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-10-31 12:12 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-10-31 12:59 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-10-31 13:27 -0700
Re: usecases of void foo(char **b) {} fir <profesor.fir@gmail.com> - 2016-10-31 13:40 -0700
Re: usecases of void foo(char **b) {} Thiago Adams <thiago.adams@gmail.com> - 2016-11-03 03:58 -0700
Page 1 of 21 [1] 2 3 … 21 Next page →
| From | fir <profesor.fir@gmail.com> |
|---|---|
| Date | 2016-10-30 05:42 -0700 |
| Subject | usecases of void foo(char **b) {} |
| Message-ID | <f04d8120-e4c9-464b-923c-7dc262da5b5b@googlegroups.com> |
this case when your argument of function is of a type of char** has couple of usecases, im not sure if people ale fully and clearly aware of them (personaly even in regard to me who rather knows c this days im not sure if i totally clear see those usacases) is someone able to mention it all and maybe note some remarks on it?
[toc] | [next] | [standalone]
| From | BartC <bc@freeuk.com> |
|---|---|
| Date | 2016-10-30 17:17 +0000 |
| Subject | Re: usecases of void foo(char **b) {} |
| Message-ID | <nv59u2$rg0$1@dont-email.me> |
| In reply to | #95408 |
On 30/10/2016 12:42, fir wrote:
> this case when your argument of function is of a type of char**
> has couple of usecases, im not sure if people ale fully and clearly
> aware of them (personaly even in regard to me who rather knows c this days
> im not sure if i totally clear see those usacases)
>
> is someone able to mention it all and maybe note some remarks on it?
Here's one:
void printstringarray(char** A,int n) {
int i;
for (i=0; i<n; ++i)
printf("%d: %s\n", i, A[i]);
}
int main (void) {
char* names[]={"Alan","Bill","Charlie","Dick"};
printstringarray(names,4);
}
And another:
char nextchar(char** s){
char c = **s;
if (c) ++*s;
return c;
}
int main (void) {
char* name="bartsimpson";
char* nameptr = name;
char c;
while (c=nextchar(&nameptr)) printf("%c",c);
}
--
bartc
[toc] | [prev] | [next] | [standalone]
| From | fir <profesor.fir@gmail.com> |
|---|---|
| Date | 2016-10-31 11:02 -0700 |
| Subject | Re: usecases of void foo(char **b) {} |
| Message-ID | <64abdf77-bc31-41d4-b392-e73b7de638a7@googlegroups.com> |
| In reply to | #95412 |
W dniu niedziela, 30 października 2016 18:17:24 UTC+1 użytkownik Bart napisał:
> On 30/10/2016 12:42, fir wrote:
> > this case when your argument of function is of a type of char**
> > has couple of usecases, im not sure if people ale fully and clearly
> > aware of them (personaly even in regard to me who rather knows c this days
> > im not sure if i totally clear see those usacases)
> >
> > is someone able to mention it all and maybe note some remarks on it?
>
> Here's one:
>
> void printstringarray(char** A,int n) {
> int i;
> for (i=0; i<n; ++i)
> printf("%d: %s\n", i, A[i]);
> }
>
> int main (void) {
> char* names[]={"Alan","Bill","Charlie","Dick"};
>
> printstringarray(names,4);
> }
>
> And another:
>
>
> char nextchar(char** s){
> char c = **s;
> if (c) ++*s;
> return c;
> }
>
> int main (void) {
> char* name="bartsimpson";
> char* nameptr = name;
> char c;
>
> while (c=nextchar(&nameptr)) printf("%c",c);
>
> }
>
the first is simple but second is a bit convoluted and thus not so clear as an easy example (it would be better to make something clearedr)- but right besides (later bode user wrote on those two categories)
the second case in pure form (is/shoul be) just case whwre you wrote something or pointer upscope (should write more on this )
> --
> bartc
[toc] | [prev] | [next] | [standalone]
| From | supercat@casperkitty.com |
|---|---|
| Date | 2016-10-30 12:13 -0700 |
| Message-ID | <a2a639b8-1b07-4f0f-98b6-eb2719d9feb8@googlegroups.com> |
| In reply to | #95408 |
On many implementations, all pointer types have the same size and
representation; in the days before void* was recognized as a valid
pointer type, function which accepted a char** could use it to manipulate
any kind of object pointer or an array thereof. For example, if one
wanted to find a function which would report whether an array of
pointers contains any nulls:
int containsAnyNulls(char **p, int size)
{
if (size) do
{
if (!*p) return 1;
} while(--size);
return 0;
}
A caller would need to cast a pointer to the array to type (char**), and
on implementations where different pointer types had different
representations such code couldn't be expected to work at all, but in
the days prior to aliasing rules such a function could be used with
arrays of pointers to any kind of object. Once void* entered the
language, the type void** would generally have been preferred to char**,
but either type would have worked equally well on any implementation
where all pointers had the same size and representation [i.e. the vast
majority of implementations].
[toc] | [prev] | [next] | [standalone]
| From | Keith Thompson <kst-u@mib.org> |
|---|---|
| Date | 2016-10-30 12:52 -0700 |
| Message-ID | <lneg2x62dj.fsf@kst-u.example.com> |
| In reply to | #95413 |
supercat@casperkitty.com writes:
> On many implementations, all pointer types have the same size and
> representation; in the days before void* was recognized as a valid
> pointer type, function which accepted a char** could use it to manipulate
> any kind of object pointer or an array thereof.
There is of course no such guarantee, and in my opinion it is poor
practice to depend on it.
> wanted to find a function which would report whether an array of
> pointers contains any nulls:
>
> int containsAnyNulls(char **p, int size)
> {
> if (size) do
> {
> if (!*p) return 1;
> } while(--size);
> return 0;
> }
I wonder why you wrote that as a do-while loop inside an if rather than
more simply as a while loop. I initially thought the "if (size) do" was
at typo. Is that intentionally obfuscated?
> A caller would need to cast a pointer to the array to type (char**), and
> on implementations where different pointer types had different
> representations such code couldn't be expected to work at all, but in
> the days prior to aliasing rules such a function could be used with
> arrays of pointers to any kind of object. Once void* entered the
> language, the type void** would generally have been preferred to char**,
> but either type would have worked equally well on any implementation
> where all pointers had the same size and representation [i.e. the vast
> majority of implementations].
void* is a "generic" pointer type. void** is not a generic
pointer-to-pointer type, and IMHO should not be used as one. If I
needed to store arbitrary pointer-to-pointer values of different
types, I'd use void* and some careful conversions.
The OP was asking about use cases for a function that takes a char**
argument. I hardly think that your digression about pointer sizes and
aliasing rules is relevant to that question. If you wanted to show an
example, you could have just discussed the argv parameter to main.
--
Keith Thompson (The_Other_Keith) kst-u@mib.org <http://www.ghoti.net/~kst>
Working, but not speaking, for JetHead Development, Inc.
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"
[toc] | [prev] | [next] | [standalone]
| From | supercat@casperkitty.com |
|---|---|
| Date | 2016-10-30 13:38 -0700 |
| Message-ID | <e6f3b068-cd8d-42ed-9bec-698c9b6f1d04@googlegroups.com> |
| In reply to | #95417 |
On Sunday, October 30, 2016 at 2:52:23 PM UTC-5, Keith Thompson wrote:
> supercat writes:
> > On many implementations, all pointer types have the same size and
> > representation; in the days before void* was recognized as a valid
> > pointer type, function which accepted a char** could use it to manipulate
> > any kind of object pointer or an array thereof.
>
> There is of course no such guarantee, and in my opinion it is poor
> practice to depend on it.
Many implementations specify the bit-level representations of pointers
even though the Standard does not require them to do so. If an
implementation specifies that pointers of type char* are stored as a
linear address stored as four bytes lsb-first, that pointers of type
int* are stored as a linear address of the first byte, stored lsb-first,
etc. would such specifications not imply that all pointers thus described
have compatible representations?
Likewise, in the absence of aliasing rules, what could an assignment made
via char** do other than set the four bytes at the target address to the
bit-level representation of the pointer being stored?
> I wonder why you wrote that as a do-while loop inside an if rather than
> more simply as a while loop. I initially thought the "if (size) do" was
> at typo. Is that intentionally obfuscated?
It's designed to help the kind of peephole optimizers that were in use
during that era. As written, straightforward code generation would start
by saying:
decrement size
branch if size is non-zero [typically expands to two instructions]
On many processors, however, the above can be replace with a faster
"decrement size and branch if non-zero" instruction or pair of instructions.
Such a replacement, however, will only work if the second line can only
execute immediately after the first [as opposed to being the target of a
jump or branch]. If the loop had been "while(size) { ... size--; }" then
it early-stage code generation would have yielded either:
loop:
branch to exit if size is zero
...
decrement size
goto loop
exit:
or else
goto loopcheck
loop:
...
decrement size
loopcheck:
branch to loop if size is not zero
The existence of a branch or label between the decrement and the test would
block a simple peephole optimizer from making the indicated substitution.
> > A caller would need to cast a pointer to the array to type (char**), and
> > on implementations where different pointer types had different
> > representations such code couldn't be expected to work at all, but in
> > the days prior to aliasing rules such a function could be used with
> > arrays of pointers to any kind of object. Once void* entered the
> > language, the type void** would generally have been preferred to char**,
> > but either type would have worked equally well on any implementation
> > where all pointers had the same size and representation [i.e. the vast
> > majority of implementations].
>
> void* is a "generic" pointer type. void** is not a generic
> pointer-to-pointer type, and IMHO should not be used as one. If I
> needed to store arbitrary pointer-to-pointer values of different
> types, I'd use void* and some careful conversions.
Accepting void* would have the advantage of eliminating caller-side casts
but the disadvantage of obfuscating how the parameter will be used. If the
Standard specified that &*expr will be a constraint violation if expr is
not a pointer of some kind, but will be an lvalue if expr is an lvalue, then
the nicest approach would be to have a macro which wraps the argument in
((void**)&&**(p)) so as to eliminate the need for a typecast in user code
(which could mask other problems) while offering far more type safety than
if the function simply took void**.
> The OP was asking about use cases for a function that takes a char**
> argument. I hardly think that your digression about pointer sizes and
> aliasing rules is relevant to that question. If you wanted to show an
> example, you could have just discussed the argv parameter to main.
In the days before void*, char** was the closest thing there was to a
generic pointer-to-pointer type on implementations which defined their
pointer representations so as to allow such a thing. Not a common usage
anymore, but one which was certainly usable in the past.
[toc] | [prev] | [next] | [standalone]
| From | Keith Thompson <kst-u@mib.org> |
|---|---|
| Date | 2016-10-30 14:32 -0700 |
| Message-ID | <lna8dl5xrj.fsf@kst-u.example.com> |
| In reply to | #95418 |
supercat@casperkitty.com writes:
> On Sunday, October 30, 2016 at 2:52:23 PM UTC-5, Keith Thompson wrote:
>> supercat writes:
>> > On many implementations, all pointer types have the same size and
>> > representation; in the days before void* was recognized as a valid
>> > pointer type, function which accepted a char** could use it to manipulate
>> > any kind of object pointer or an array thereof.
>>
>> There is of course no such guarantee, and in my opinion it is poor
>> practice to depend on it.
>
> Many implementations specify the bit-level representations of pointers
> even though the Standard does not require them to do so. If an
> implementation specifies that pointers of type char* are stored as a
> linear address stored as four bytes lsb-first, that pointers of type
> int* are stored as a linear address of the first byte, stored lsb-first,
> etc. would such specifications not imply that all pointers thus described
> have compatible representations?
Certainly, an implementation can document whatever it likes. That
doesn't affect my point.
[...]
>> I wonder why you wrote that as a do-while loop inside an if rather than
>> more simply as a while loop. I initially thought the "if (size) do" was
>> at typo. Is that intentionally obfuscated?
>
> It's designed to help the kind of peephole optimizers that were in use
> during that era.
[snip]
So, premature optimization aimed at ancient compilers. You might have
bothered to mention that.
[...]
>> The OP was asking about use cases for a function that takes a char**
>> argument. I hardly think that your digression about pointer sizes and
>> aliasing rules is relevant to that question. If you wanted to show an
>> example, you could have just discussed the argv parameter to main.
>
> In the days before void*, char** was the closest thing there was to a
> generic pointer-to-pointer type on implementations which defined their
> pointer representations so as to allow such a thing. Not a common usage
> anymore, but one which was certainly usable in the past.
So you assumed, without stating your assumption, that the use of char**
for a parameter was intended as some kind of generic pointer-to-pointer,
a usage that would apply only to very old code. And you ignored the
much more common use of char** as a pointer to pointer to char, such as
the argv parameter of main.
If you want to make some unrelated point about aliasing and pointer
representations, I suggest starting a new thread rather than hijacking a
simple question that probably had nothing to do with what you're talking
about.
Or, as I've suggested before, you could start a blog.
--
Keith Thompson (The_Other_Keith) kst-u@mib.org <http://www.ghoti.net/~kst>
Working, but not speaking, for JetHead Development, Inc.
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"
[toc] | [prev] | [next] | [standalone]
| From | "Rick C. Hodgin" <rick.c.hodgin@gmail.com> |
|---|---|
| Date | 2016-10-30 13:49 -0700 |
| Message-ID | <ec8cbb0d-82c7-4040-80e6-a656e1213a89@googlegroups.com> |
| In reply to | #95413 |
On Sunday, October 30, 2016 at 3:14:05 PM UTC-4, supe...@casperkitty.com wrote:
> [snip]
> if (size) do
> {
> if (!*p) return 1;
> } while(--size);
> [snip]
I've never seen this use of syntax before. I like it. I would rewrite
slightly to move the do keyword down to the next line:
if (test)
do {
// Code here
} while(second_test);
I really like that syntax. It easily exposes the two test conditions. I
wonder if a dedicated syntax like...:
do if (test)
{
// Code here
} while (second_test);
...would be desirable?
Best regards,
Rick C. Hodgin
[toc] | [prev] | [next] | [standalone]
| From | supercat@casperkitty.com |
|---|---|
| Date | 2016-10-30 14:04 -0700 |
| Message-ID | <eb7cf93b-3bdd-4980-94ae-43035c21cf15@googlegroups.com> |
| In reply to | #95419 |
On Sunday, October 30, 2016 at 3:49:27 PM UTC-5, Rick C. Hodgin wrote:
> On Sunday, October 30, 2016 at 3:14:05 PM UTC-4, supercat wrote:
> > [snip]
> > if (size) do
> > {
> > if (!*p) return 1;
> > } while(--size);
> > [snip]
>
> I've never seen this use of syntax before. I like it. I would rewrite
> slightly to move the do keyword down to the next line:
>
> if (test)
> do {
> // Code here
> } while(second_test);
>
> I really like that syntax.
I don't like it so much, since the "do" doesn't really look like it's
controlled by the "if" [no indent]. Indenting the "do" would in turn
necessitate another level of indent on the contents of the loop, and
would end up with the "} while" line being indented one deeper than
the following code unless one added an extra set of braces for the "if",
making code take up even more vertical space.
> It easily exposes the two test conditions. I
> wonder if a dedicated syntax like...:
>
> do if (test)
> {
> // Code here
> } while (second_test);
>
> ...would be desirable?
How about
if (test) do
{
...
} while (second_test);
Note that your proposed syntax is already syntactically valid C, but has a
meaning which is probably different from what you intend.
[toc] | [prev] | [next] | [standalone]
| From | "Rick C. Hodgin" <rick.c.hodgin@gmail.com> |
|---|---|
| Date | 2016-10-30 14:14 -0700 |
| Message-ID | <53933b44-84f6-4a5c-bf3e-5ac931642864@googlegroups.com> |
| In reply to | #95420 |
On Sunday, October 30, 2016 at 5:05:31 PM UTC-4, supe...@casperkitty.com wrote:
> On Sunday, October 30, 2016 at 3:49:27 PM UTC-5, Rick C. Hodgin wrote:
> > On Sunday, October 30, 2016 at 3:14:05 PM UTC-4, supercat wrote:
> > > [snip]
> > > if (size) do
> > > {
> > > if (!*p) return 1;
> > > } while(--size);
> > > [snip]
> >
> > I've never seen this use of syntax before. I like it. I would rewrite
> > slightly to move the do keyword down to the next line:
> >
> > if (test)
> > do {
> > // Code here
> > } while(second_test);
> >
> > I really like that syntax.
>
> I don't like it so much, since the "do" doesn't really look like it's
> controlled by the "if" [no indent]. Indenting the "do" would in turn
> necessitate another level of indent on the contents of the loop, and
> would end up with the "} while" line being indented one deeper than
> the following code unless one added an extra set of braces for the "if",
> making code take up even more vertical space.
I was thinking:
if (test)
{
// Code
)
Being translated into an iterative condition:
if (test)
do {
} while (second_test);
So that rather than being "if (x) {" it now becomes "if (x) do {".
> > It easily exposes the two test conditions. I
> > wonder if a dedicated syntax like...:
> >
> > do if (test)
> > {
> > // Code here
> > } while (second_test);
> >
> > ...would be desirable?
>
> How about
>
> if (test) do
> {
> ...
> } while (second_test);
>
> Note that your proposed syntax is already syntactically valid C, but has a
> meaning which is probably different from what you intend.
I was unaware my proposed syntax was already valid in C. I just tested
it and it compiled. What does it do? :-)
Best regards,
Rick C. Hodgin
[toc] | [prev] | [next] | [standalone]
| From | "Rick C. Hodgin" <rick.c.hodgin@gmail.com> |
|---|---|
| Date | 2016-10-30 14:20 -0700 |
| Message-ID | <55236aae-a46e-42f6-8a3d-360f6e41728a@googlegroups.com> |
| In reply to | #95421 |
On Sunday, October 30, 2016 at 5:14:41 PM UTC-4, Rick C. Hodgin wrote:
> On Sunday, October 30, 2016 at 5:05:31 PM UTC-4, supe...@casperkitty.com wrote:
> > On Sunday, October 30, 2016 at 3:49:27 PM UTC-5, Rick C. Hodgin wrote:
> > > It easily exposes the two test conditions. I
> > > wonder if a dedicated syntax like...:
> > >
> > > do if (test)
> > > {
> > > // Code here
> > > } while (second_test);
> > >
> > > ...would be desirable?
> >
> > Note that your proposed syntax is already syntactically valid C, but has a
> > meaning which is probably different from what you intend.
>
> I was unaware my proposed syntax was already valid in C. I just tested
> it and it compiled. What does it do? :-)
I wrote this test:
int main(int argc, char* argv[])
{
int i = 4;
do if (--i)
{
printf("%i\n", i);
} while (--i);
}
It looks like it's doing a header test and a footer test on every
iteration. What would you use that for?
Best regards,
Rick C. Hodgin
[toc] | [prev] | [next] | [standalone]
| From | "Rick C. Hodgin" <rick.c.hodgin@gmail.com> |
|---|---|
| Date | 2016-10-30 14:23 -0700 |
| Message-ID | <aa086f14-4bd9-43d2-acf0-49e69e8557fa@googlegroups.com> |
| In reply to | #95422 |
On Sunday, October 30, 2016 at 5:20:12 PM UTC-4, Rick C. Hodgin wrote:
> I wrote this test:
>
> int main(int argc, char* argv[])
> {
> int i = 4;
> do if (--i)
> {
> printf("%d\n", i);
Correction. Should be printf("%d\n", i);
> } while (--i);
> }
Best regards,
Rick C. Hodgin
[toc] | [prev] | [next] | [standalone]
| From | BartC <bc@freeuk.com> |
|---|---|
| Date | 2016-10-31 13:40 +0000 |
| Subject | Re: usecases of void foo(char **b) {} |
| Message-ID | <nv7hjg$utl$1@dont-email.me> |
| In reply to | #95422 |
On 30/10/2016 21:20, Rick C. Hodgin wrote:
> On Sunday, October 30, 2016 at 5:14:41 PM UTC-4, Rick C. Hodgin wrote:
>> On Sunday, October 30, 2016 at 5:05:31 PM UTC-4, supe...@casperkitty.com wrote:
>>> On Sunday, October 30, 2016 at 3:49:27 PM UTC-5, Rick C. Hodgin wrote:
>>>> It easily exposes the two test conditions. I
>>>> wonder if a dedicated syntax like...:
>>>>
>>>> do if (test)
>>>> {
>>>> // Code here
>>>> } while (second_test);
>>>>
>>>> ...would be desirable?
>>>
>>> Note that your proposed syntax is already syntactically valid C, but has a
>>> meaning which is probably different from what you intend.
>>
>> I was unaware my proposed syntax was already valid in C. I just tested
>> it and it compiled. What does it do? :-)
>
> I wrote this test:
>
> int main(int argc, char* argv[])
> {
> int i = 4;
> do if (--i)
> {
> printf("%i\n", i);
> } while (--i);
> }
>
> It looks like it's doing a header test and a footer test on every
> iteration. What would you use that for?
C has the if-statement, and the do-while statement. Either can be
written with a single-statement body without braces:
if (a==b) c=d;
do c=d; while (e==f);
or with braces, here shown with the same single statement:
if (a==b) {c=d};
do {c=d;} while (e==f);
I suppose it can get confusing if you mix non-brace versions of both:
if (a==b) do c=d; while (e==f);
do if (a==b) c=d; while (e==f);
There is also the while-statement with a one-statement body:
while (g==h) i=j;
What /I/ can't understand is how C distinguishes from a while-statement
with an empty body, from the while-part of do-while:
do while (g==h); while (k==l);
Is this a do-while loop controlled by (k==l), with a single statement in
its body consisting of the loop 'while (g==h)'? Or a do-loop with an
empty body controlled by (g==h), followed by a separate while-loop with
an empty body?
I suggest following David Brown's advice and always using braces!
--
Bartc
[toc] | [prev] | [next] | [standalone]
| From | Ben Bacarisse <ben.usenet@bsb.me.uk> |
|---|---|
| Date | 2016-11-01 01:45 +0000 |
| Subject | Re: usecases of void foo(char **b) {} |
| Message-ID | <87eg2w3rd3.fsf@bsb.me.uk> |
| In reply to | #95436 |
BartC <bc@freeuk.com> writes: <snip> > What /I/ can't understand is how C distinguishes from a > while-statement with an empty body, from the while-part of do-while: > > do while (g==h); while (k==l); > > Is this a do-while loop controlled by (k==l), with a single statement > in its body consisting of the loop 'while (g==h)'? Yes. > Or a do-loop with > an empty body controlled by (g==h), followed by a separate while-loop > with an empty body? No. The grammar makes it clear: C's compound control statements (switch, if, while, for and do) all require a statement to be controlled. <snip> -- Ben.
[toc] | [prev] | [next] | [standalone]
| From | Tim Rentsch <txr@alumni.caltech.edu> |
|---|---|
| Date | 2016-11-01 07:55 -0700 |
| Subject | Re: usecases of void foo(char **b) {} |
| Message-ID | <kfnwpgnckqz.fsf@x-alumni2.alumni.caltech.edu> |
| In reply to | #95436 |
BartC <bc@freeuk.com> writes: > What /I/ can't understand is how C distinguishes from a > while-statement with an empty body, from the while-part of do-while: > > do while (g==h); while (k==l); > > Is this a do-while loop controlled by (k==l), with a single statement > in its body consisting of the loop 'while (g==h)'? Or a do-loop with > an empty body controlled by (g==h), followed by a separate while-loop > with an empty body? Do you not know, or not understand, how to read ordinary syntax rules? The syntax rules for C answer this question fairly easily.
[toc] | [prev] | [next] | [standalone]
| From | mark.bluemel@gmail.com |
|---|---|
| Date | 2016-11-01 08:07 -0700 |
| Subject | Re: usecases of void foo(char **b) {} |
| Message-ID | <5bf72ffe-ef52-4ad7-969c-ad2cf00a83d7@googlegroups.com> |
| In reply to | #95509 |
It has already been determined that Bart is concerned with criticising C not understanding it... (BTW isn't it interesting how "fir" threads tend to end up with him talking to himself for a lot of the time?)
[toc] | [prev] | [next] | [standalone]
| From | BartC <bc@freeuk.com> |
|---|---|
| Date | 2016-11-01 16:55 +0000 |
| Subject | Re: usecases of void foo(char **b) {} |
| Message-ID | <nvahe1$a8k$1@dont-email.me> |
| In reply to | #95511 |
On 01/11/2016 15:07, mark.bluemel@gmail.com wrote: > It has already been determined that Bart is concerned > with criticising C not understanding it... > > (BTW isn't it interesting how "fir" threads tend to end > up with him talking to himself for a lot of the time?) > I said I found constructs like this confusing: do do while (a); while (b); while (c); which they are. Saying that you can figure them out by delving into the grammar might tell you what it means but it doesn't make it less confusing. You don't want to write code so obscure that people need to refer to a grammar. The difference between a 'while' ending a 'do' statement and one starting a separate 'while' statement is subtle, IMO. The attitude here seems to be that C cannot be criticised under any circumstances. There is nothing wrong with any aspect of it! Anyway I wasn't criticising it except saying I couldn't understand it. In fact this sub-thread started off with someone (not me) being confused by a similar bit of code. -- Bartc
[toc] | [prev] | [next] | [standalone]
| From | Keith Thompson <kst-u@mib.org> |
|---|---|
| Date | 2016-11-01 11:58 -0700 |
| Subject | Re: usecases of void foo(char **b) {} |
| Message-ID | <lntwbr2fjh.fsf@kst-u.example.com> |
| In reply to | #95531 |
BartC <bc@freeuk.com> writes:
[...]
> The attitude here seems to be that C cannot be criticised under any
> circumstances. There is nothing wrong with any aspect of it!
I am aware of no such attitude.
My own attitude is that there are a lot of legitimate criticisms of C,
but repeating those criticisms ad nauseam as you do is boring.
Furthermore, expressing those criticisms in terms that seem to be
designed to maximize confusion is annoying.
I've never said I *like* the way C treats arrays and pointer, and in
fact I don't. I'm not sure how I'd fix it while retaining C's
relatively low level. But I *understand* how they work.
> Anyway I wasn't criticising it except saying I couldn't understand it.
> In fact this sub-thread started off with someone (not me) being confused
> by a similar bit of code.
Yes, the code in question was poorly written. It would have been easier
to understand with proper formatting.
--
Keith Thompson (The_Other_Keith) kst-u@mib.org <http://www.ghoti.net/~kst>
Working, but not speaking, for JetHead Development, Inc.
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"
[toc] | [prev] | [next] | [standalone]
| From | John Bode <jfbode1029@gmail.com> |
|---|---|
| Date | 2016-11-01 12:34 -0700 |
| Subject | Re: usecases of void foo(char **b) {} |
| Message-ID | <c184bbfc-3258-4ae3-a32c-b47a869cf60f@googlegroups.com> |
| In reply to | #95531 |
On Tuesday, November 1, 2016 at 11:56:03 AM UTC-5, Bart wrote:
> On 01/11/2016 15:07, mark.bluemel@gmail.com wrote:
> > It has already been determined that Bart is concerned
> > with criticising C not understanding it...
> >
> > (BTW isn't it interesting how "fir" threads tend to end
> > up with him talking to himself for a lot of the time?)
> >
>
> I said I found constructs like this confusing:
>
> do do while (a); while (b); while (c);
>
> which they are. Saying that you can figure them out by delving into the
> grammar might tell you what it means but it doesn't make it less
> confusing. You don't want to write code so obscure that people need to
> refer to a grammar.
>
Right. There's no point in making code harder to read than it needs to be.
Just writing it as
do
{
do
while (a);
while (b);
} while (c);
would go a *long* way towards making that clearer, although I'd personally
write
do
{
do
{
while (a);
} while (b);
} while (c);
I've adopted a style where I will only omit curly braces on the innermost
statement, and only if I think the code is *obvious* without it, as in
if ( a )
{
if ( b )
stmt;
}
but if the innermost statement is an empty control structure (such as a for(a;b;c); or while(a);), I'd wrap it in a curly brace as well:
if ( a )
{
if ( b )
{
for ( c; d; e );
}
}
> The difference between a 'while' ending a 'do' statement and one
> starting a separate 'while' statement is subtle, IMO.
>
> The attitude here seems to be that C cannot be criticised under any
> circumstances. There is nothing wrong with any aspect of it!
>
Only speaking for myself, I don't hold that attitude at all - C has more
than its fair share of warts, and I will gripe about them myself. If I
could go back in time to 1968, there's a few things I'd slap dmr around
for. I understand why the array conversion rule exists, I understand what
his motivation was, I understand why it looked like a good idea at the time,
but it has enabled whole classes of bugs and misfeatures and security holes
that *simply don't exist* in languages like Fortran or Pascal or Ada (yes,
I'm old).
But here's the thing - C's something like 45 years old now. WG14 may add
a few new features here and there, deprecate some *obviously* dodgy shit,
but they're not going to fundamentally change the syntax or semantics of
the language. Paradigms come and go, but legacy code is forever. C isn't
going to significantly evolve from here on out.
What gets on *my* nerves are people bitching about what C does wrong and
why it needs to be changed *without taking time to understand what it is
that they are criticizing*. "It doesn't make sense to me, therefore it
is hopelessly broken and should be changed in these ways". fir does
that in this very thread when he bitches about the concept of multiple
indirection:
> for some time i began to think or at least speculate that ** and more
> 'rank' pointers in c are bad idea (and it seem to fit this examples too)
If C isn't doing the job you need it to, use a language that does. You
need structured exception handling, generics, lambdas, etc.? Use C++. You
want to avoid pointers in *any* form? Use Java or C#. That would be
*endlessly* more productive than coming here and complaining that C doesn't
work the way you think it should.
> Anyway I wasn't criticising it except saying I couldn't understand it.
> In fact this sub-thread started off with someone (not me) being confused
> by a similar bit of code.
>
> --
> Bartc
[toc] | [prev] | [next] | [standalone]
| From | fir <profesor.fir@gmail.com> |
|---|---|
| Date | 2016-11-01 12:49 -0700 |
| Subject | Re: usecases of void foo(char **b) {} |
| Message-ID | <dc8726a7-db8d-4089-af57-f73de4b3a6cd@googlegroups.com> |
| In reply to | #95539 |
W dniu wtorek, 1 listopada 2016 20:34:28 UTC+1 użytkownik John Bode napisał: > > What gets on *my* nerves are people bitching about what C does wrong and > why it needs to be changed *without taking time to understand what it is > that they are criticizing*. "It doesn't make sense to me, therefore it > is hopelessly broken and should be changed in these ways". fir does > that in this very thread when he bitches about the concept of multiple > indirection: > not really, in realily im most probably the first person on this planet to understand c concepts in its 'deeper deepness' here what i was criticisizing is a big type-hole which is bringed to life by things like int** (and even int*) i also discussed/presentet relatively easy patch for patching it
[toc] | [prev] | [next] | [standalone]
Page 1 of 21 [1] 2 3 … 21 Next page →
Back to top | Article view | comp.lang.c
csiph-web