Timing basic operations in C++

I am attempting to measure the time it takes for a for loop to iterate 1000 times and the time it takes for a multiplication operation.

I am having some trouble with measuring the ops with enough precision. When I time a for loop interating 1000 times and when I time a multiplication operation, in both instances I get a time of 0. I read that this means that the ops are taking less than one ms. I've been trying to find a method for timing ops with greater precision but so far I have not had any luck. If anyone could point me in the right direction it would be much appreciated.

Code:

`void matrix::time_for_ops()`

{

loop_timer_start = clock(); // start for loop timer

for (int i = 0; i < 1000; i++)

{

//do nothing

}

loop_timer_end = clock(); //end for loop timer

//=====================================

multiplication_timer_start = clock(); //start multi timer

test = 3 * 3;

multiplication_timer_end = clock(); //end multi timer

//======================================

// Output results

cout << "Time to execute multiplication = ";

cout << (multiplication_timer_end - multiplication_timer_start)/CLOCKS_PER_SEC;

cout << endl;

cout << "Time for a for loop to execute 1000 times = ";

cout << (loop_timer_end - loop_timer_start)/CLOCKS_PER_SEC << endl;

return;

}