atoi

    0熱度

    2回答

    我是C新手,遇到以下問題:我想將參數保存爲整數。之前寫過這樣的代碼: int main(int argc, char argv[]) { if(argc > 1) { int test = atoi(argv[1]); printf("Input: %i\n", test); } } 但是我總是在運行時出現分段錯誤錯誤。 什麼問題?

    2熱度

    1回答

    我該如何讀取該字符串的第一個字符作爲整數? char *p = argv[1]; 謝謝!

    0熱度

    4回答

    我有以下代碼。 while (*str != '\0') { digit = *str - '0'; result = result * radix + digit; str++; } *str -'0'這是什麼意思?

    -2熱度

    3回答

    1 13 3 4; 5 6 7 8; 9 10 11 12; 2 15 14 0 如何從ANSI C中的字符串獲取數字? 我試圖把它與strtok的()分開: char *vstup = argv[1]; char delims[] = ";"; char *result = NULL; result = strtok(vstup, delims); while(result !=

    1熱度

    3回答

    我有一個從K & R C 2nd版的atoi()函數的例子的問題。只能使用從0到9的字符。但是在我的程序的邏輯中,我做錯了什麼。 所以有這樣的功能: #include <stdio.h> int atoi(char s[]); int main() { int i; char ch; char co[50]; int ci[50]; w

    1熱度

    2回答

    我正在編寫一些MIPS代碼來獲取一串ASCII數字並將該字符串轉換爲一個整數。該字符串由用戶輸入並且最多可以爲10位數字。我的代碼工作正常,並使用顯式的方法來執行循環加法後,乘以10的冪的最小有效數字的字符串由數組索引確定,從最後輸入的數字(10^0)開始到第一個數字輸入(10^n,n =數組中的位數)。 我想知道是否有更快或更短的替代方法來編寫。特別是,我想知道如果使用邏輯位移可能會縮短此過程。

    0熱度

    2回答

    我試圖將二進制字符的字符串轉換爲整數值。 例如:「100101101001」我會用for循環將它分成四段,然後將它存儲在數組[4]中。但是,無論何時使用函數atoi(),如果字符串以「0」開頭,我會遇到一個問題,它不能正確地轉換字符串。 一個例子是「1001」 = 1001,但如果是0110,將被轉換爲110,還與0001將它僅來1. 這裏是我提出的代碼: for(i = 0; i < strle

    -1熱度

    3回答

    我得到了一個值爲1的無符號字符,我需要把它放在像「1」這樣的字符串中。 但是,如果我試圖把這個直接放入一個stringstream它將得到char(1)的值,我需要它是「1」。 我知道,如果我可以將它放入函數atoi中,它將返回「1」值。 但我試圖將它轉換爲char並將其放入atoi函數中,但它會引發異常。 已經嘗試將它放入一個字符串中,並將c_str()轉換爲atoi函數,但沒有成功。 如果有人

    2熱度

    2回答

    我試圖在字符串509951644和4099516441上調用atoi。第一個轉換沒有任何問題。第二個是給我十進制值2,147,483,647(0x7FFFFFFF)。這是爲什麼發生?

    0熱度

    1回答

    我想從有這樣的交流輸入文件整數:括號(我用的不是一個數字的大while循環和strcat的號碼後 (0 3 200 3) (0 9 500 3) (98 20 500 3) (100 1 100 3) (100 100 500 3) 的atoi和S做工精細的第一個數字)和任何只有一位數字的數字,但他們只返回括號後不正確數字的第一位數字。 以下是該方法的代碼: void allProcesses