C- kielessä muuttujia ei saa esitellä enää sen jälkeen kun lohkossa on ollut yksikin "suoritettava lause". C++:ssa tätä rajoitusta ei ole:
/* VARLATER.CPP */ #include <stdio.h> int main(void) { int a=5; printf("a = %2d\n",a); int k=3; printf("k = %2d\n",k); for (int i=0; i<10; i++) { // Huom! Älä luota i:n olemassaoloon silm. jälkeen! printf("i = %2d i^2=%3d\n",i,i*i); } // printf("i = %2d\n",i); // Tämä ei toimi uuden std-ehdotuksen mukaan return 0; }