0

3www2as3com0に変換するプログラムを作りたいのですがwww.as.com、最初はうまくいきませんでした。文字列の最初の数字 (文字 3) を整数に変換して、変換したプログラムを印刷するときに3 ではなく 51 を表示するなどの関数を使用したいと考えています。問題は何ですかstrncpy?strchrint

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(int argc, char** argv) {

    /* argv[1]--->3www2as3com0*/

    char *string;
    char *p;  

    string=argv[1];
    p=string;

    char cond,cond2;

    cond=*p; //I want to have in cond the number 3

    cond2=(int)cond; //I want to convert cond (a char) to cond2(an int)

    printf("%d",cond2); //It print me 51 instead of 3

    return (EXIT_SUCCESS);
}
4

3 に答える 3

0

使用している文字列が負の数になることはないようですので、atoi() を使用して、char から整数値を返します。数値ではないものに遭遇すると、それまでに積み上げられた数値を取得します。

于 2013-08-09T06:10:10.820 に答える