在c++中我想知道一个语句的执行时间;
比如
int delay=200;
for(;delay>0;delay--);
那么for语句循环下来是多长时间呢?我想可能有一个变化可以就是把程序编译成功后反汇编,但是我在编程的时候就要知道,整个程序还没编完,有没有直接只选择该语句,可以查找到该语句的执行时间的,而且这个语句的执行时间是一定的还是与代码的一些运行具体的条件和环境有关的?
iamxujian大哥讲得很精确,不过我还想问下,这个如果通过频率和指令周期计算,
现在的程序是在pc机上编写的,不过最后会下载到arm中去执行,arm中的是外部12M晶振起振,arm的主频最高可达202M,但是在不同的时候可能会将主频设置的不一样。那我计算的时候是根据pc的主频算还是arm的主频算,指令周期是不是要把它变成汇编语句之后计算啊?而且这个变成汇编语句的过程,我觉得他应该不是固定的吧,不是还有什么优化过程吗?这条语句是不是在不同的前后代码背景中被汇编成的语句有所差异,这样说来,就应该看arm的汇编语句,这这些汇编语句的指令周期,以及arm当前工作的频率来计算了,应该是根据12M的外部起振频率算吗?像单片机一样,还是根据arm的主频,那么不同的主频下还会延时时间不同?貌似我的推测矛盾了。
那么是按12外部起振频率算,根据变成的汇编语句算,这个汇编语句是不是只要在同arm中都是固定的?
如何计算C++程序所有的语句,每条语句执行的时间
在语句执行前记录一下时间,语句执行后记录一下时间,然后相减。当然,本着测不准的原理,你采样的越频繁,你测量的用时(相对于你不测量的时候的用时)就可能越不准确
如何用c++计算空循环所用时间?
startCTime = clock(); \/\/clock函数返回CPU时钟计时单元(clock tick)数,还有一个常量表示一秒钟有多少个时钟计时单元,可以用clock()\/CLOCKS_PER_SEC来求取时间 \/\/你的循环 endCTime = clock();cout << "采用计时方式三(好像有些延迟,精确到秒):循环语句运行了:" << double((endCTim...
c++ 我想让一个无限循环的while语句执行5分钟 怎么办 请高手解答!_百度...
使用while循环,由于你的CPU随时可以被别人占用,楼上的方法其实无非保证5分钟,只能保证不小于5分钟。循环永远无法准确做到这点(当然,其他方法也永远不可能,除非是你独占式系统)
C++中,一般每条语句执行时间是多少秒?
2.0GHz的cpu的话执行100000000次最简单的语句大约是600Ms,比如integer的加减乘除,如果是long long 或者 double 等就会慢50%.
请问C++有没有可以做到输入某些字符或数字就能执行某个语句的指令?
用一个字符串读指令,然后用字符串匹配的方法(这个需要完全比配,或者不区分大小写自己都是可以写的),只要匹配到既定的指令就执行对应操作。
c或者c++语言有没有检测用户是否有输入或者在一段时间内是否有输入的...
\/\/ input_wait_demo.cpp : Defines the entry point for the console application.\/\/#include <stdio.h>int main(int argc, char* argv[]){\/\/On while loop,waiting user's input.char input_char = '\\0';while( scanf("%c", &input_char) != 0 ){if ( input_char == 10 ){...
C++中怎么知道一个函数被调用了几次
如果只需要统计一个函数,可以在那个函数之前增加如下函数:static int counter(bool get=false){ static int function_called_counter=0;if(!get) ++function_called_counter;return function_called_counter;} 这样,在你要统计的函数的第一行前加上调用 counter();就会自动进行统计了。最后想知道统计...
c++语言中如何实现显示系统时间
下面,我将说明在C\/C++中怎样使用日期的时间功能。2. 计时 C\/C++中的计时函数是clock(),而与其相关的数据类型是clock_t。在MSDN中,查得对clock函数 定义如下: clock_t clock( void ); 这个函数返回从“开启这个程序进程”到“程序中调用clock()函数”时...
对于C++程序,每一个语句只能位于一行中( )。
1 .错 可以位于几行 2 .错 main不是 3.错 从main函数开始 4.对 5.错 6.错 自加运算符的左值或者右值必须是变量,x+y算出来的不是变量 7.对 9.错
在C\/C++中,一般for循环中执行一次需要多少时间?
执行的速度是和平台有关的,没有一个确切的规定,就如同同一个引用程序在P4的电脑上和P2的电脑上运行所需要的时间是不同的一样。你需要了解很多方面的只是,首先,你得知道目标平台处理器的确切主频,即多少MHZ。还要了解编译器会将这些代码编译成多少条机器指令,并了解这些机器指令的执行周期。例如12M...