[闲聊] 有C语言字串大师吗?

楼主: Wardyal (Wardyal)   2024-03-29 11:53:42
我有一个字串是
char a[10] = "adbde123";
我要取1234出来
我可以直接
a[0]=a[5];
a[1]=a[6];
a[2]=a[7];
a[3]='\0';
return atoi(a);
这样会有问题吗
我编译可以过 输出也没问题
主要是不想在额外建一个字串来存 "123"
作者: yam276 ('_')   2024-03-29 11:55:00
字符阵列=仿赛
楼主: Wardyal (Wardyal)   2024-03-29 11:56:00
可是我读到的东西就是只能用char才存应该吧
作者: oinishere (是oin捏)   2024-03-29 11:56:00
atoi 只能转一个字符吧
楼主: Wardyal (Wardyal)   2024-03-29 11:57:00
可以转字串吧 连-都可以转了
作者: oinishere (是oin捏)   2024-03-29 11:57:00
不然你直接atoi(a+5)欸字串可以欸 好扯喔
楼主: Wardyal (Wardyal)   2024-03-29 11:59:00
ㄟ对ㄝ 你好棒我是白痴那假如我是要取 adb123efg里面的数字哩是不是就不能直接+了
作者: oinishere (是oin捏)   2024-03-29 12:01:00
如果把后面那个e转成0的话 应该也可以用一样的方法吧
作者: wu10200512 (廷廷)   2024-03-29 12:02:00
可以
楼主: Wardyal (Wardyal)   2024-03-29 12:08:00
OK
作者: chuegou (chuegou)   2024-03-29 12:24:00
我会倾向用sscanf...可是你不想宣告额外变量
作者: SecondRun (雨夜琴声)   2024-03-29 12:31:00
4在哪
楼主: Wardyal (Wardyal)   2024-03-29 12:46:00
打错了

Links booklink

Contact Us: admin [ a t ] ucptt.com