我的目標是將諸如"A1234"之類的字符串轉換爲值爲1234的long。我的第一個步驟是隻是轉換"1234"到long,並且按預期工作: #include <stdio.h>
#include <stdlib.h>
int main(int argc, char **argv)
{
char* test = "1234";
long val = strtol(test,N
我的功能還沒有完全完成,但我現在要做的是長整數的上一行的變量個數讀取: 要分開的一串數字閱讀由空格。 從該字符串中提取數字。 將它們轉換爲長整數。 返回讀取號碼的數量。 int input(int a, int b, long int *result_array)
{
int ele = 0;
char buffer[200];
char *start, *end;
我試圖將此字符串"09195462965"轉換爲int,但我遇到了問題。 片斷我的代碼: int n, p, pnum=0;
char buffer[256];
char *endptr;
long pnumber;
bzero(buffer,256);
p = read(sock,buffer,255);
pnumber = strtol(buffer, &endptr,
strtol解析出給定字符串中的長整數。好的。但是,我怎麼能檢查是否有任何解析? 例如: 以下字符串產量0使用strtol: 0abcdef 然而 ,以下字符串產量0也使用strtol: abcdef 所以,我沒有指示是否f unction解析了有效的0或根本沒有解析任何東西,因此返回0。 如何驗證strtol是否正常工作或返回錯誤?有沒有其他的選擇? I read that strtol set