2011-10-28 5 views
0
#include <stdio.h> 
//#include <<strong class="highlight">string</strong>.h> 

// Function declarations 
// typedef __w64 unsigned int size_t 
size_t strlen(const char *); 
char *strrev(char *); 
char *itoa(int, char *, int); 

int main() { 
    int num = 123; 
    char buf[5]; 

    itoa(num, buf, 10); 

    printf("%s\n", buf); 

    return 0; 
} 

size_t strlen(const char *string) { 
    const char *s; 

    s = <strong class="highlight">string</strong>; 
    while (*s) 
     s++; 
    return s - <strong class="highlight">string</strong>; 
} 

char *strrev(char *str) { 
    char *p1, *p2; 

    if (!str || !*str) 
     return str; 

    for (p1 = str, p2 = str + strlen(str) - 1; p2 > p1; ++p1, --p2) { 
     *p1 ^= *p2; 
     *p2 ^= *p1; 
     *p1 ^= *p2; 
    } 

    return str; 
} 

char *itoa(int n, char *s, int b) { 
    static char digits[] = "abcdefghijklmnopqrstuvwxyz"; 
    int i=0, sign; 

    if ((sign = n) < 0) 
     n = -n; 

    do { 
     s[i++] = digits[n % b]; 
    } while ((n /= b) > 0); 

    if (sign < 0) 
     s[i++] = '-'; 
    s[i] = '\0'; 

    return strrev(s); 
} 

取得中にエラーを使用せずに文字列に...質問のこの部分にitoaはに

S =文字列をint型の変換。 while(* s) s ++; return s - string;不足しているタグ名 と構文エラー:不足している「クラス」と言っ

<

私は様々なものをしようと...それを修正する方法がわからない...

任意の助けをいただければ幸いです。..あなたが何らかの形で自分のC++ソースコードにHTMLマークアップを得ているように見えます

+1

これは宿題でなければ、なぜこれをやってもらえませんか? – Marvo

+0

も参照してください:http://stackoverflow.com/questions/7537874/how-do-you-convert-an-int-into-a-string-in-c – Johnsyweb

+3

@RayToal:私はちょうどあなたが編集したHTMLその問題は問題の原因でした(エラーメッセージの '<'に注意してください)。 –

答えて

3

たくさん

感謝:

s = <strong class="highlight">string</strong>; 
while (*s) 
    s++; 
return s - <strong class="highlight">string</strong>; 

私は先に進んで修正しましたが、エラーメッセージに<という文字が含まれているので、実際の問題だと思います。おそらく間違っていくつかのWebページからコードをコピー&ペーストしましたか?

EDIT:@RayToalはあなたの質問からHTMLを編集しました。

+0

私はそれをテストし、あなたは、HTMLマークアップを含むコードをコンパイルしようとするときに質問に記載されているエラーを取得します。だからあなたはこれが問題だということは間違いありません。 – sth

関連する問題