如何将特定字符从字符串转换为int(C)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将特定字符从字符串转换为int(C)相关的知识,希望对你有一定的参考价值。

我正在尝试将字符从字符串转换为整数。我试过了:

int function(char c[]) {
     return (int)c[1];
}

我只想转换字符串c的第二个字符,它的长度只有两个。

此函数的问题是返回的整数与我输入的整数完全不同。

[我也试图比较c [1]和0到10之间的数字(只有那些数字需要转换),但是c [1]存在问题。

我希望一切都足够清楚,以便您可以为我提供帮助。

谢谢!!!

答案

我认为您要将char转换为ASCII(整数)形式。

printf(“%c的ASCII值=%d n”,i,i);

如果要将Integer转换为char;只需使用如下所示的显式强制转换

字符c1 =(字符)97; // c1 ='a'

另一答案

尝试一下:

#include<stdio.h>

int function(char c[]);

int main(void) {
    char characters[3] = {'a','b','c'};

    int a = function(characters);

    printf ("%d",a);

    return 0;
}

int function(char c[]) {
     return (int)c[1];
}
另一答案

尝试此:-

int function(char c[]) {
    int x=0;
    try {
        x = Integer.parseInt(String.valueOf(c[1]));
    }catch (NumberFormatException e){
        x=c[1];
    }
    return x;
}

以上是关于如何将特定字符从字符串转换为int(C)的主要内容,如果未能解决你的问题,请参考以下文章

如何在目标 c 中从 int 转换为字符串:示例代码

如何将向量转换为特定类型的字符串

将字符从文件读取行转换为 int 转储核心

C# |从 URL 抓取 JSON 无法将字符串转换为 int

请问C语言中如何将int转换为float

将字符串转换为int-objective c [重复]