The author here is either unfamiliar with the practice of C++ or being somewhat dishonest. These examples are all very non-idiomatic C++. I have not used Rust yet, but I am fairly certain that if I have a task in and I do it the wrong way in Rust and then do it the right way in C++, I am going to get junk from Rust and what I expected from C++. This article is not going to convince an experienced C++ programmer of anything, but to those that do not know C++ beware.
As John Regehr says in the article Compilers and Termination Revisited in the C 1999 standard it is unclear whether the as-if rule rule allows compilers to eliminate infinite loops or not. The fact that reasonable people can come to different conclusions says it is underspecified.
In the C 2011 standard this was clarified and it now forbids optimizing away an infinite loop if the control statement is a constant expression, for example:
while (1) { }
is not fair game for optimization. You can find more detail in my Stackoverflow answer here
The two lines are an int definitions. One also has an initialize ruin, but they are both definitions all the same. A good compiler would yield a warning but it doesn't have to. At any rate this will not link, because of the one definition rule.
I don’t mean to complain that ‘Someone on the Internet is Wrong’ (http://xkcd.com/386/) but hopefully this is informative to someone. I do also mean to make the point that, yes, I agree: I do not know C, you do not know C, and we do not know C, as it would seem C is unknowable… but then, the same could be said of JavaScript and of many other languages.
Regarding Q9, the answer is indeed 0, but note the words of the C99 standard: “For unsigned integer types other than unsigned char, the bits of the object representation shall be divided into two groups: value bits and padding bits (there need not be any of the latter).” I am not sure of the situation in C90.
I suggest using «int main(void)» rather than the old-style «int main()». Every C compiler I've seen will accept both, but I've argued that a strict reading of the C standard indicates that «int main()» has undefined behavior.
What is the damage? how many things can you recuperate from the «nuked» PC/Laptop.
If it's a PC, what's the damage there?
Here you can see more detailed i-python notebooks and associated video tutorials from one of the main contributors to the scikit-learn library:
www.cosmos.esa.int/web/esac-science-faculty/esac-statistics-workshop-2014
Quick note for anyone who wants to try this using Python 2 (rather than Python 3): you'll need to insert
from __future__ import print_function
at the outset.
In the C 2011 standard this was clarified and it now forbids optimizing away an infinite loop if the control statement is a constant expression, for example: is not fair game for optimization. You can find more detail in my Stackoverflow answer here
The two lines are an int definitions. One also has an initialize ruin, but they are both definitions all the same. A good compiler would yield a warning but it doesn't have to. At any rate this will not link, because of the one definition rule.
instead of X = dataset[:,0:7]
shouldn`t it be X = dataset[:,0:8]
as there are 8 features?
I suggest using «int main(void)» rather than the old-style «int main()». Every C compiler I've seen will accept both, but I've argued that a strict reading of the C standard indicates that «int main()» has undefined behavior.