读书人

求帮忙解释停这个C++程序

发布时间: 2013-07-11 15:38:46 作者: rapoo

求帮忙解释下这个C++程序


4 #include <iostream>
5 #include <stdio.h>
6 #include <string.h>
7 #include <math.h>
8
9 using namespace std;
10
11 char* ieee32(long long*, long long*, char*, char*);
12
13 int main()
14 {
15 char input[256],IEEE32[10],IEEE64[18];
16 char *waypoint, *decimal;
17 int i=0;
18 long long number=0,digits=0;
19 int sign;
20 cout << "Number: ";
21 cin >> input;
22 waypoint=strtok(input, ".");
23 if (input[0]-'-' == 0){
24 input[0]='0';
25 sign=1;
26 for (i=0;i<strlen(waypoint);i++){
27 number+=((input[i]-'0')*(pow(10,(strlen(waypoint)-i-1))));
28 }
29 }
30 else{
31 sign=0;
32 for (i=0;i<strlen(waypoint);i++){
33 number+=((input[i]-'0')*(pow(10,(strlen(waypoint)-i-1))));
34 }
35 cout << waypoint << endl;


36 }
37 decimal=strtok(NULL, "\0");
38 for (i=0;i<strlen(decimal);i++){
39 digits+=((decimal[i]-'0')*(pow(10,(strlen(decimal)-i-1))));
40 }
41 ieee32(&number,&digits,waypoint,decimal);
42 return 0;
43 }
44
45 char* ieee32(long long* number, long long* digits, char* waypoint, char* decimal)
46 {
47 char binary1[1000],binary2[1000];
48 int temp,carry;
49 int i;
50 //for (i=0;i<strlen(waypoint);i++){
51 // temp=(*number)&1;
52 // cout << temp << endl;
53 //}
54 cout << waypoint << endl;
55 cout << *digits << endl;
56 cout << *number << endl;
57 cout << *digits << endl;
58 return 0;
59 }
60



我不理解为什么54行waypoint不需要指针而55行的digits需要指针,求大神帮忙解释
[解决办法]
这主要是看cout要输出什么,waypoint表示字符串,而*digits表示一维long数组。

读书人网 >C++

热点推荐