atoi.c
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | /*
stdlib.h [atoi]
書式: int atoi(const char *s)
機能: 数字から整数型 (int 型) に変換
引数: const char *s: 変換元の文字列を指定
戻り値: int 型に変換された整数値
*/
#include <stdio.h>
#include <stdlib.h>
int main(void){
char *s = "12345";
int i;
i = atoi(s);
printf("数値: %d\n", i);
return 0;
}
|
atoi.c の実行結果は:
[cactus:~/code_c/refer]% ./atoi
数値: 12345
atol.c
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | /*
stdlib.h [atol]
書式: long atol(const char *s)
機能: 数字から整数型 (long 型) に変換
引数: const char *s: 変換元の文字列を指定
戻り値: long 型に変換された整数値
*/
#include <stdio.h>
#include <stdlib.h>
int main(void){
char *s = "123456789";
long l;
l = atol(s);
l++;
printf("数値 (long 型): %li\n", l);
return 0;
}
|
atol.c の実行結果は:
[cactus:~/code_c/refer]% ./atol
数値 (long 型): 123456790
atof.c
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | /*
stdlib.h [atof]
書式: double atof(const char *s)
機能: 数字から整数型 (double 型) に変換
引数: const char *s: 変換元の文字列を指定
戻り値: double 型に変換された整数値
*/
#include <stdio.h>
#include <stdlib.h>
int main(void){
char *s = "123.12345";
double d;
d = atof(s);
printf("小数値 (double 型): %.5f\n", d);
return 0;
}
|
atof.c の実行結果は:
[cactus:~/code_c/refer]% ./atof
小数値 (double 型): 123.12345
strtod.c
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | /*
stdlib.h [strtod]
書式: double strtod(const char *s, char **ends)
機能: 文字列を浮動小数点 (double 型) に変換
引数: const char *s: 変換元の文字列
char **ends: 変換が不可能だった文字列を格納するポインタ
戻り値: double 型に変換された値
*/
#include <stdio.h>
#include <stdlib.h>
int main(void){
char *s = "123.12345ABC";
char *ends;
double d;
d = strtod(s, &ends);
printf("変換元の文字列: %s\n", s);
printf("double 型に変換された値: %.5f\n", d);
printf("変換できなかった文字列: %s\n", ends);
return 0;
}
|
strtod.c の実行結果は:
[cactus:~/code_c/refer]% ./strtod
変換元の文字列: 123.12345ABC
double 型に変換された値: 123.12345
変換できなかった文字列: ABC
strtol.c
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | /*
stdlib.h [strtol]
書式: long strtol(const char *s, char **ends, int base)
機能: 文字列を整数値 (long 型) に変換
引数: const char *s: 変換元も文字列
char **ends: 変換が不可能だった文字列を格納するポインタ
int base: 基数
戻り値: long 型に変換された値
*/
#include <stdio.h>
#include <stdlib.h>
int main(void){
char *s = "123ABC";
char *ends;
long l;
l = strtol(s, &ends, 0);
printf("変換元の文字列: %s\n", s);
printf("long 型に変換された値: %li\n", l);
printf("変換できなかった文字列: %s\n", ends);
return 0;
}
|
strtol.c の実行結果は:
[cactus:~/code_c/refer]% ./strtol
変換元の文字列: 123ABC
long 型に変換された値: 123
変換できなかった文字列: ABC
strtol1.c
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | /*
stdlib.h [strtol]
書式: long strtol(const char *s, char **ends, int base)
機能: 文字列を整数値 (long 型) に変換
引数: const char *s: 変換元も文字列
char **ends: 変換が不可能だった文字列を格納するポインタ
int base: 基数
戻り値: long 型に変換された値
*/
#include <stdio.h>
#include <stdlib.h>
int main(void){
char *s = "0xFF ABC";
char *ends;
long l;
l = strtol(s, &ends, 0);
printf("変換元の文字列: %s\n", s);
printf("long 型に変換された値: %li\n", l);
printf("変換できなかった文字列: %s\n", ends);
return 0;
}
|
strtol1.c の実行結果は:
[cactus:~/code_c/refer]% ./strtol1
変換元の文字列: 0xFF ABC
long 型に変換された値: 255
変換できなかった文字列: ABC
strtoul.c
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | /*
stdlib.h [strtoul]
書式: long strtoul(const char *s, char **ends, int base)
機能: 文字列を整数値 (unsigned long 型) に変換
引数: const char *s: 変換元も文字列
char **ends: 変換が不可能だった文字列を格納するポインタ
int base: 基数
戻り値: unsigned long 型に変換された値
*/
#include <stdio.h>
#include <stdlib.h>
int main(void){
char *s = "123456789ABCDE";
char *ends;
unsigned long ul;
ul = strtoul(s, &ends, 0);
printf("変換元の文字列: %s\n", s);
printf("unsigned long 型に変換された値: %li\n", ul);
printf("変換できなかった文字列: %s\n", ends);
return 0;
}
|
strtoul.c の実行結果は:
[cactus:~/code_c/refer]% ./strtoul
変換元の文字列: 123456789ABCDE
unsigned long 型に変換された値: 123456789
変換できなかった文字列: ABCDE