⑴ 将一个字符串转换到整型数据的函数为
C语言:
sscanf(str,"%d",&i);
或
int i=atoi(str);
java语言:
int i=Integer.valueOf(str);
⑵ java 怎么把字符串转化成整型
前提得是输入的数字。不然是转换不过来的。字母中好像也是有数字的。。。区分大小写
⑶ 在java中怎样把字符串变为整形
String str = "111";
int num = Integer.parseInt(str);
你可以在java.lang.Integer包里查看这个方法的具体说明:
1、方法原型:public static int parseInt(String s) throws NumberFormatException
方法说明:将字符串参数作为有符号的十进制整数进行解析。除了第一个字符可以是用来表示负值的 ASCII 减号 '-' ('\u002D') 外,字符串中的字符都必须是十进制数字。返回得到的整数值,就好像将该参数和基数 10 作为参数赋予 parseInt(java.lang.String, int) 方法一样。
参数:
s - 包含要解析的 int 表示形式的 String。
返回:
用十进制参数表示的整数值。
抛出:
NumberFormatException - 如果字符串不包含可解析的整数。
2、还有另外一种形式:
public static int parseInt(String s,int radix)throws NumberFormatException
方法说明:使用第二个参数指定的基数,将字符串参数解析为有符号的整数。除了第一个字符可以是用来表示负值的 ASCII 减号 '-' ('\u002D’)外,字符串中的字符必须都是指定基数的数字(通过 Character.digit(char, int) 是否返回一个负值确定)。返回得到的整数值。
如果发生以下任意一种情况,则抛出一个 NumberFormatException 类型的异常:
第一个参数为 null 或一个长度为零的字符串。
基数小于 Character.MIN_RADIX 或者大于 Character.MAX_RADIX。
假如字符串的长度超过 1,那么除了第一个字符可以是减号 '-' ('u002D’) 外,字符串中存在任意不是由指定基数的数字表示的字符。
字符串表示的值不是 int 类型的值。
示例:
parseInt("0", 10) 返回 0
parseInt("473", 10) 返回 473
parseInt("-0", 10) 返回 0
parseInt("-FF", 16) 返回 -255
parseInt("1100110", 2) 返回 102
parseInt("2147483647", 10) 返回 2147483647
parseInt("-2147483648", 10) 返回 -2147483648
parseInt("2147483648", 10) 抛出 NumberFormatException
parseInt("99", 8) 抛出 NumberFormatException
parseInt("Kona", 10) 抛出 NumberFormatException
parseInt("Kona", 27) 返回 411787
参数:
s - 包含要解析的整数表示形式的 String
radix - 解析 s 时使用的基数。
返回:
使用指定基数的字符串参数表示的整数。
抛出:
NumberFormatException - 如果 String 不包含可解析的 int。
⑷ c语言中如何将一个字符ascii码转换为整型数
for循环的错误,不能让他加到80.i<strlen(str);并且gets的用法也有错误,它会直接加‘\0’,不用自己内加吧容
你的程序写的有点繁琐
#include"stdio.h"
#include"string.h"
main()
{
int i,s;
char str[80];
i=0;
s=0;
printf("input a string:");
gets(str);
for(i=0;i<strlen(str);i++)
if(str[i]>='0'&&str[i]<='9')
{
s=s*10+str[i]-'0';
}
printf("%d",s);
printf("\n");
getchar();
}
⑸ c++ 里 怎么把字符型转化为整型
字符符型转换整形用强制转换就行
char c='B' ;
int a ;
a = (int)c ;
如果是字符'0'到‘专9’转成0-9
char c='8' ;
int a ;
a =(int) (c - '0') ;
如果是字串转数字,用属atoi , atol
⑹ java中怎样将一个字符串中的数字转换成整型
木有不可能。 请参考下面代码,只提取数字。
public class Test1 {
public static void main(String[] args) {
String a ="12a34bW()5!!专6";
String num =a.replaceAll("\\D+", "");
int result =Integer.parseInt(num);
System.out.println(result);
属}
}
⑺ C语言怎样将单个字符转化为整型字符
#include<stdio.h>
#include<stdlib.h>
#include
<string.h>
int
c[20];
char
b[20];
int
_tmain(int
argc,
_TCHAR*
argv[])
{
char
temp[2];
gets(b);
temp[0]
=
b[1];
temp[1]
=
'\0';
c[1]=atoi(temp);
printf("%c\n",b[1]);
printf("%d\n",c[1]);
return
0;
}
你用atoi(&b[1]),实际上相当于atoi("234"),返回的结果当然是234,
如果你需要单个字符的转换,就需要自己手回动构建个含有单个字符的字答符串,temp就是做这事的。
⑻ C++中怎样把一个字符串数组中的数 转换成整形 数据 如:string s=“1234” 然后转换成int n=1234
可以直接用atoi这个函数
#include "iostream"
using namespace std;
int main()
{
string s="1234";
int n;
n=atoi(s.c_str()); //string对象转专成char *,再调属用atoi函数
cout<<n<<endl;
}
⑼ C语言怎么把字符串转化为整形数字 是-'0'吗
好吧
我给你看抄看我的程序吧
#include<stdio.h>
#include<cstring>
int main()
{
char zifu[80];
int shuzi[80];
gets(zifu);//你的gets用对了哦
for(int i=0;i<strlen(zifu);i++)//由于字符数组下表从0开始 所以是0
{//同时strlen(zifu)是zifu数组的字符数量 如果用80会有空字符的哦
shuzi[i]=zifu[i]-'0';//是-'0' 也可以写成-48
}
for(int i=0;i<strlen(zifu);i++)
printf("%d",shuzi[i]);
return 0;
}
⑽ C语言字符转换成整形的方法是什么
两种方法:一种是使用使用atoi函数。第二种是使用格式化输出。
atoi函数:函数原型版:int atoi(const char *nptr);
功能:把权字符串转换成整型数。
参数nptr字符串,如果第一个非空格字符存在,是数字或者正负号则开始做类型转换,之后检测到非数字(包括结束符 ) 字符时停止转换,返回整型数。否则,返回零。