C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

CおよびC++でcharをintに変換するにはどうすればよいですか?


C言語では、char型変数をintに変換する方法は3つあります。これらは次のように与えられます-

  • sscanf()
  • atoi()
  • 型キャスト

これは、C言語でcharをintに変換する例です。

#include<stdio.h>
#include<stdlib.h>
int main() {
   const char *str = "12345";
   char c = 's';
   int x, y, z;

   sscanf(str, "%d", &x); // Using sscanf
   printf("\nThe value of x : %d", x);

   y = atoi(str); // Using atoi()
   printf("\nThe value of y : %d", y);

   z = (int)(c); // Using typecasting
   printf("\nThe value of z : %d", z);

   return 0;
}

出力

出力は次のとおりです:

The value of x : 12345
The value of y : 12345
The value of z : 115

C ++言語では、char型変数をint-

に変換する方法は次の2つです。
  • stoi()
  • 型キャスト

これは、C++言語でcharをintに変換する例です。

#include <iostream>
#include <string>
using namespace std;
int main() {
   char s1[] = "45";
   char c = 's';

   int x = stoi(s1);
   cout << "The value of x : " << x;

   int y = (int)(c);
   cout << "\nThe value of y : " << y;

   return 0;
}

出力

これが出力です

The value of x : 45
The value of y : 115

  1. C++の壁と門

    1つのmxn 2Dグリッドがあり、それがこれら3つの可能な値で初期化されているとします。 -壁または障害物の場合は-1。 ゲートの場合は0。 INFこれは無限大は空の部屋を意味します。 ここで、2 ^ 31-1 =2147483647はINFです。これは、ゲートまでの距離が2147483647未満であると想定できるためです。空の各部屋に、最も近いゲートまでの距離を入力します。ゲートに到達できない場合は、INFで埋める必要があります。 したがって、入力が次のような場合 INF -1 0 INF INF INF INF -1

  2. C++で重複する円と長方形

    (radius、xc、yc)として表される円があると仮定します。ここで、(xc、yc)は円の中心座標です。また、(x1、y1、x2、y2)として表される軸に沿った長方形があります。ここで、(x1、y1)は左下隅の座標であり、(x2、y2)は右上隅の座標です。長方形の角。円と長方形が重なっていないか確認する必要があります。 したがって、入力が次のような場合 そうすれば、出力は真になります。 これを解決するには、次の手順に従います- 関数eval()を定義します。これには、a、b、c、が必要です。 bの最大値とaとcの最小値を返します メインの方法から、次のようにしま