【问题标题】:convert a char element from an array to an int将 char 元素从数组转换为 int
【发布时间】:2017-02-17 02:40:17
【问题描述】:

您好,我正在尝试使用来自用户的输入将数组元素转换为整数。

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

int main()
{
    char i[9]={'-','-','-','-','-','-','-','-','\0'};
    int j;
    printf ("enter an integer for an element ");
    sscanf(i, "%d", &j);

    return 0;
}

我在某处读到使用 sscanf 是一种方法,但我不知道使用它的正确方法。

【问题讨论】:

标签: c arrays char int


【解决方案1】:

scanf 从标准输入读取。

sscanf 从字符串中读取。

scanf 用法示例:

#include <stdio.h>

int main()
{
   char str1[20];

   printf("Enter name: ");
   scanf("%s", str1);

   printf("First char converted to int: %d\n", str1[0]);

   int j = str1[1];
   printf("Second char converted to int: %d\n", j);

   return(0);
}

输入和输出:

Enter name: marcel
First char converted to int: 109
Second char converted to int: 97

【讨论】:

    【解决方案2】:

    正如 Marcel 所说,有两种不同的功能可以做不同的事情。 您请求使用来自用户的输入将数组的元素转换为整数,所以我认为您想要这样:

    char i[9]={'-','-','-','-','-','-','-','-','\0'};
    int j;
    printf ("enter an integer for an element ");
    scanf("%i", &j);
    printf("Element[ %i ] in integer is: %i", j, i[j]); 
    

    【讨论】:

      猜你喜欢
      • 2014-09-12
      • 2013-10-16
      • 1970-01-01
      • 1970-01-01
      • 2011-11-09
      • 1970-01-01
      • 2013-12-11
      • 1970-01-01
      • 2014-03-02
      相关资源
      最近更新 更多