相关疑难解决方法(0)

将字符数字转换为C中的相应整数

有没有办法将字符转换为C中的整数?

例如,从'5'5到?

c type-conversion

91
推荐指数
6
解决办法
43万
查看次数

如何将单个char转换为int

我有一串数字,例如"123456789",我需要提取它们中的每一个以在计算中使用它们.我当然可以通过索引访问每个char,但是如何将其转换为int?

我查看了atoi(),但它需要一个字符串作为参数.因此,我必须将每个char转换为字符串,然后在其上调用atoi.有没有更好的办法?

c++ char

56
推荐指数
3
解决办法
21万
查看次数

从c语言中的char数组中获取int值

我有一系列字符,如:

char bytes[8]={2,0,1,3,0,8,1,9}
Run Code Online (Sandbox Code Playgroud)

我想从下面的数组中获取前四个字符,并将它们放入一个新的整数变量中.我怎样才能做到这一点?我试图改变他们,但这种逻辑不起作用.任何的想法?谢谢.

示例:从此数组中获取:年月日

char bytes[8]={2,0,1,3,0,8,1,9}

int year = 2013 ......  month = 8 ............  day = 19
Run Code Online (Sandbox Code Playgroud)

c

3
推荐指数
1
解决办法
1617
查看次数

如何从C中的字符中减去整数?

Brian Kernighnan在他的"用C编程"一书中说

根据定义,字符只是小整数,因此char变量和常量与算术表达式中的int相同.

这是否意味着我们可以从int中减去char变量?

我写了一小段代码:

#include <stdio.h>

main()
{
    int a ;
    int c;
    a = 1;
    c = 1 - '0' ;
    printf("%d", c);
}
Run Code Online (Sandbox Code Playgroud)

但它给我输出= -47 ...

那是什么我做错了?我指定的变量是否具有正确的类型?

c c++ variables int char

2
推荐指数
1
解决办法
6239
查看次数

在C中将字符数组转换为整数数组

我正在向 C 程序传递一个参数:

程序名称 1234

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

    int     length_of_input = 0;    
    char*   input           = argv[1];


    while(input[length_of_input]) {
        //convert input from array of char to int
        length_of_input++;
    }
}
Run Code Online (Sandbox Code Playgroud)

我希望能够将传递给函数的参数的每个数字作为整数单独使用。atoi(input[]) 抛出编译时错误。

此代码无法编译:

while(input[length_of_input]) {
    int temp = atoi(input[length_of_input]);
    printf("char %i: %i\n", length_of_input, temp);
    length_of_input++;
}
Run Code Online (Sandbox Code Playgroud)

c int char atoi

0
推荐指数
1
解决办法
1万
查看次数

如何从C中的字符串中获取一个没有空格的int?

所以我有一个这样的字符串:"MULTR12"

我想把'1'和'2'作为两个单独的整数.我该怎么做呢?以前,我简单地说:

char *string = "MULTR12";
val = string[5];
Run Code Online (Sandbox Code Playgroud)

但是我得到一个非常奇怪的val值而不是1,就像我想要的那样.有人可以帮忙吗?谢谢!

c string int

0
推荐指数
1
解决办法
115
查看次数

标签 统计

c ×5

char ×3

int ×3

c++ ×2

atoi ×1

string ×1

type-conversion ×1

variables ×1