CS-APP:Section 5.1,Memory aliasing:same function implementation ,different test result!
2010-04-08 00:03
375 查看
same function implementation ,different test result!
1 int f(int);
2
3 int func1(int x)
4 {
5 return f(x) + f(x) + f(x) + f(x);
6 }
7
8 int func2(int x)
9 {
return 4*f(x);
}
testing code1:
1 /*
2 ============================================================================
3 Name : test.c
4 Author : Gump Yin
5 Version :
6 Copyright : www.cnblogs.com/BpLoveGcy/
7 Description : Hello World in C, Ansi-style
8 ============================================================================
9 */
10
11 #include <stdio.h>
12 #include <stdlib.h>
13
14 int f(int);
15
16 int func1(int x)
17 {
18 return f(x) + f(x) + f(x) + f(x);
19 }
20
21 int func2(int x)
22 {
23 return 4*f(x);
24 }
25
26 int counter = 0;
27 int f(int x)
28 {
29 return counter++;
30 }
31
32 int main(void) {
33 printf("func1(5)=%d\n",func1(5));
34
35 printf("func2(5)=%dn",func2(5));
36 return EXIT_SUCCESS;
37 }
38 // testing result:
39 /*
40 func1(5)=6
41 func2(5)=16
42
43 */
testing code2:
1 /*
2 ============================================================================
3 Name : test.c
4 Author : Gump Yin
5 Version :
6 Copyright : www.cnblogs.com/BpLoveGcy/
7 Description : Hello World in C, Ansi-style
8 ============================================================================
9 */
#include <stdio.h>
#include <stdlib.h>
int f(int);
int func1(int x)
{
return f(x) + f(x) + f(x) + f(x);
}
int func2(int x)
{
return 4*f(x);
}
int counter = 0;
int f(int x)
{
return x++;
}
int main(void) {
printf("func1(5)=%d\n",func1(5));
printf("func2(5)=%d\n",func2(5));
return EXIT_SUCCESS;
}
/*
testing result:
func1(5)=20
func2(5)=20
*/
1 int f(int);
2
3 int func1(int x)
4 {
5 return f(x) + f(x) + f(x) + f(x);
6 }
7
8 int func2(int x)
9 {
return 4*f(x);
}
testing code1:
1 /*
2 ============================================================================
3 Name : test.c
4 Author : Gump Yin
5 Version :
6 Copyright : www.cnblogs.com/BpLoveGcy/
7 Description : Hello World in C, Ansi-style
8 ============================================================================
9 */
10
11 #include <stdio.h>
12 #include <stdlib.h>
13
14 int f(int);
15
16 int func1(int x)
17 {
18 return f(x) + f(x) + f(x) + f(x);
19 }
20
21 int func2(int x)
22 {
23 return 4*f(x);
24 }
25
26 int counter = 0;
27 int f(int x)
28 {
29 return counter++;
30 }
31
32 int main(void) {
33 printf("func1(5)=%d\n",func1(5));
34
35 printf("func2(5)=%dn",func2(5));
36 return EXIT_SUCCESS;
37 }
38 // testing result:
39 /*
40 func1(5)=6
41 func2(5)=16
42
43 */
testing code2:
1 /*
2 ============================================================================
3 Name : test.c
4 Author : Gump Yin
5 Version :
6 Copyright : www.cnblogs.com/BpLoveGcy/
7 Description : Hello World in C, Ansi-style
8 ============================================================================
9 */
#include <stdio.h>
#include <stdlib.h>
int f(int);
int func1(int x)
{
return f(x) + f(x) + f(x) + f(x);
}
int func2(int x)
{
return 4*f(x);
}
int counter = 0;
int f(int x)
{
return x++;
}
int main(void) {
printf("func1(5)=%d\n",func1(5));
printf("func2(5)=%d\n",func2(5));
return EXIT_SUCCESS;
}
/*
testing result:
func1(5)=20
func2(5)=20
*/
相关文章推荐
- CS-APP:Section 5.1,Memory aliasing :看上去逻辑一样,执行结果一样吗?
- CS-APP:Section 5.1,Practice Problem 5.1:Swap value testing
- go test can't find function in a same package
- Memory Function Test
- [转]NPOI TestFunctionRegistry.cs
- Android CTS 结果 testResult.xml 修改 fail 项 为 notExecuted 项 分析
- Memory-Efficient Implementation of DenseNets
- MFC中cannot find the definition (implementation) of this function 解决方法
- Detect if the UnitTest is running and fix the AppDomain.BaseDirectory in VS 2008
- Java Memory Leak Test
- How to Simulate Different Network Speeds in Your JMeter Load Test
- App内部封版测试(生产)TestFlight
- 在使用Poco库调试时出现异常,异常位置:EnterCriticalSection(&_cs);
- 有一个文件 test.txt ,读取文件每一行计算每一行的和,最终将结果保存到result.txt文件中
- InstallHinfSection function
- com.android.cts.appsecurity.PermissionsHostTest等相关测项fail
- SyntaxHighlighter part3(TestApp)
- 查看app发布result
- 错误提示: An App ID with identifier "*****" is not avaliable. Please enter a different string.
- TestFlight——完美的iOS&nbsp;App测…