Skip to main content

Some interesting observations in C++

//I used Dev C++ Ver 5.11 (compiler) ... i told since some of this might run differently on other IDEs

Some interesting observations in C++
----------------------------------------
1. About pow() function
*pow() cant find 'fractional' powers, but can find decimal powers
for eg. pow(4,1/2) gives 1;
but, pow(4,0.5) gives 2;
     pow(4,0.55) gives 2.14;

*roots of negative numbers:
pow(-4,0.5) gives "nan"

2. Time Battle between cout and for loop (UnExpEcTEd)
In this program, see the time taken by them (individually) "on my computer" (on faster computers there may be more/less gap)

#include<iostream>
using namespace std;
int main()
{

//for(int i=1; i<100000;i++);  //0.215 sec
cout<<"hello";  //0.303 sec
}

3. Dont ask user to enter 0, if you are going to use an IF statement, because 0 is treated as false; instead ask for -1 instead of 0 (*you may even as for any other number)
For eg. cout<<"Enter 0 if you want to exit : "; cin>>choice;
if(choice==0) exit;
else goto proceed;

//in this piece of code, even if the user enters 0, the if will become false, and hence will not exit
//ALTERNATIVE (Not recommended) - you may go like this : "if(choice!=0) exit;" but if the user is asked to enter number choice from a menu, for eg. then the program will exit instead of proceeding :p

4. About the size of array...
   When you declare an array globally, you will have to give its size also
   When you declare an array in a function, you will have to give its size also
   When you declare an array in a CLASS or STRUCT, you are NOT REQUIRED TO GIVE ITS SIZE
   When you declare an array in a FUNCTION'S PROTOTYPE, you are NOT REQUIRED TO GIVE ITS SIZE

5. C++ is CASE SENSITIVE

6. C++ printed a 100MB file in 6s (with random characters from the heap storage) on a 7 year old laptop, with an intel core i5, and 4GB DDR3 RAM

7. More to be added...

Comments

Popular posts from this blog

Using 'ls' command as a replacement of 'find'

Advantage over find - Actually not probably in terms of speed, but... only point of this is that it's an observation, but... you can do like 'search only in' */*/*Programs* , /*/*Programs*/* , this may compensate the extra time took by using two commands 1. To search in current folder only (1 level... only this folder, no subfolder)     Type... ls | grep Search_Term 2. To search in current folder only (till level 2... this folder + subfolder)     Type... ls * | grep Search_Term #ls and ls * are NOT same! 3. To search in current folder only (till level 3... this folder + subfolder + subfolder)     Type... ls */* | grep Search_Term 4. To search in current folder only (till level 4... this folder + subfolder + subfolder + subfolder)     Type... ls */*/* | grep Search_Term ... and so on... FORMULA - To search till 'n' level (considering current folder as 1)... go till (n-1) stars If wanting to search whole disk... better type star...

Most Code will now be at my GitHub - github.com/adi-g15

Friends... i didn't update this blog for a month. But actually it was the period of time, i LEARNED and DID the most. The sole purpose of this blog for me, was just to put 'Interesting Observations' i used to get during finding or solving the errors, and some just clicked to try. Now, that i have actually been trying many languages and design, so most of the new code part will be on GitHub from now on... Thanks for reading... and I WILL keep posting more inferences here (I got dozens in this month due to the projects ;D ). And special thanks to DevHack1.0 team! GitHub link -> https://github.com/AdityaGupta150

LudO - The Game

/* Programmer - Aditya Gupta (Techy15) Language - C++ Program - LudO - The Game */ /* PLANS- Add functionality for name of player */ //IMP NOTE - See all notes, written in this form "//NOTE..." //NOTE- Mark 'R','G','B','Y' for gotis, ignore doubling for now //NOTE- Settings will have options: change default game play order(ie RBYG), change/give names to each colour //NOTE- Add code in case of attacks //NOTE- Add stops, and ways to show them distinct from others {may require graphics.h} #include<iostream> /* #include<fstream>    To be used in case save & resume to be used*/ #include<cstdio> #include<cstdlib> using namespace std; //Changes on 16th Oct //Show gotis as R1, R2... and ask user to enter string R1 or whatever // // Place within appropriate block ...     short diethrow(){     int fl=1; //holds 0 if decnum is 0     while(fl==0) { char *temp;     ...