【发布时间】:2020-10-24 14:34:29
【问题描述】:
所以我有这个问题我有以下代码:
char lin1[] = "1234";
printf("main(): %d\n", __________); // Sould print 1234 from lin1 as an integer
我的目标是使用 printf 将 lin1 打印为整数,而不使用 atoi 或 strtol。
所以输出应该是 1234
我试过了
printf("main() %d\n", lin1 -'0');
但它不起作用,解决方案应该与它类似,因为这是一个简单的练习,但我没有看到它!
【问题讨论】:
-
我看到了两种可能性:
printf("main() %s\n", lin1);(将格式说明符更改为%s)和printf("main() %d\n", 1234);。没有实际转换为 int 的情况下,无法从lin1保留%d的字符串进行打印。除非你应该自己写my_atoi() -
我无法更改代码,我必须使用 lin1 打印 1234 完成 sintax