#include<stdio.h> int main(){ printf("%s\n", typeof((unsinged int) 123f - 23)); return 0; } 我没有缺少main函数 但是他报错link没有入口函数
时间: 2024-04-13 22:30:18 浏览: 174
#include <stdio.h>
你的代码中存在一些语法错误和潜在问题。首先,你使用了一个无效的数据类型 `(unsigned int) 123f - 23`。应该使用合法的数据类型来进行类型转换。
其次,`typeof` 是一个GCC扩展,它不能直接用于确定数据类型并在 printf 中使用。你可以使用 `%s` 来打印字符串,但是要先将数据类型转换为字符串。
最后,关于报错 "link没有入口函数",这可能是由于链接器找不到程序的入口函数 `main` 引起的。这可能是因为编译器无法正确识别你的源代码或者编译选项设置不正确导致的。请确保你的代码中只有一个 `main` 函数,并尝试重新编译和链接你的代码。
修正后的代码如下所示:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(){
unsigned int num = 123;
unsigned int result = num - 23;
char str[20];
sprintf(str, "%u", result);
printf("%s\n", str);
return 0;
}
```
请注意,此代码将输入 `100`,因为 `123 - 23` 的结果是 `100`。如果你有其他问题,请随时提问!
阅读全文