Chris Angelico wrote: > On Fri, Mar 28, 2014 at 12:44 PM, Dave Angel <da...@davea.name> wrote: >>> if (array m = Regexp.split2(some_pattern, some_string)) >>> do_something(m); >>> >> >> I don't know for certain about if, but you can declare (in C++) a >> new variable in for, which is a superset of if. Scope ends when >> the for does. > > Yeah, but only a for, AFAIK. Not an if or a while.
Why would you guess if you can check? Just fire up the interactive interpreter^W^W compiler: $ cat ifdecl.c #include <stdio.h> int main() { if(int i=42) printf("%d\n", i); } $ gcc ifdecl.c ifdecl.c: In function ‘main’: ifdecl.c:5:6: error: expected expression before ‘int’ if(int i=42) ^ ifdecl.c:6:20: error: ‘i’ undeclared (first use in this function) printf("%d\n", i); ^ ifdecl.c:6:20: note: each undeclared identifier is reported only once for each function it appears in $ g++ ifdecl.c $ ./a.out 42 -- https://mail.python.org/mailman/listinfo/python-list