[英]How to convert a specific character from a string into an int (C)
我正在嘗試將字符從字符串轉換為 int。 我試過這個:
int function(char c[]) {
return (int)c[1];
}
我只想轉換字符串 c 的第二個字符,它的長度只有兩個。
這個 function 的問題是返回的 integer 與我輸入的完全不同。
我還嘗試比較 c[1] 和從 0 到 10 的數字(只有那些數字需要轉換),但是 c[1] 有問題。
我希望一切都足夠清楚,以便您可以幫助我。
謝謝 !!!
答:我剛剛改了return(int)c[1];
進入return(int)(c[1]-'0');
效果很好,至少對我來說
我認為您想將 char 轉換為其 ASCII(整數)形式。
printf("The ASCII value of %c = %d\n",i,i);
如果要將 integer 轉換為 char,只需使用如下顯式轉換:
char c1 = (char)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;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.