Can we say ‘listen to somebody do something‘?

本文分析了一种不常见的英语句式,'Listen to Lily welcome a computer consultant to her office.',探讨了如何理解这种包含动词不定式的复合句,并通过对比例句加深理解。

I saw a sentence 'Listen to Lily welcome a computer consultant to her office.'. I've never seen a sentence like this before, so I try to analyze it.

 

I know 'listen to somebody/something'. So, I reckon it's 'listen to that...', 'Lily welcome a computer consultant to her office' is a that-clause. But if so, then the verb 'welcome' ought to be in the third person, which is 'welcomes'. So this can't be it.

 

We all know we can see/hear somebody do something. In fact 'listen to' is the same. They are all perception verbs. 'Welcome' here is an infinitive without to.

Example:

I saw her run away from the building.

Listen to Tom talk about his concerns.

在你提到的项目结构中,`say_hello()` 函数是在 `main.c` 中定义的,并在 `main.c` 的 `main()` 函数中被调用。此外,它也可能被其他模块(如 `utils.c` 或 `data.c`)调用,前提是这些文件包含了声明它的头文件 `main.h`。 --- ## 📁 回顾项目结构 ``` project/ ├── main.c ├── include/ │ └── main.h ├── src/ │ ├── utils/ │ │ ├── utils.c │ │ └── utils.h │ └── data/ │ ├── data.c │ └── data.h ``` --- ## 🔍 `say_hello()` 的定义位置 ### `main.c` ```c #include <stdio.h> #include "main.h" #include "utils/utils.h" #include "data/data.h" void say_hello() { printf("Hello from main!\n"); } int main() { say_hello(); // ← 这里调用了 say_hello() utils_function(); // 调用 utils 模块的函数 data_function(); // 调用 data 模块的函数 return 0; } ``` ✅ `say_hello()` 在 `main()` 函数中被调用了。 --- ## 📄 `say_hello()` 的声明位置 ### `include/main.h` ```c #ifndef MAIN_H #define MAIN_H void say_hello(); #endif ``` 这个头文件的作用是**让其他 `.c` 文件知道 `say_hello()` 函数的存在**,从而可以调用它。 --- ## 🧪 示例:其他模块调用 `say_hello()` 比如,如果你希望在 `utils.c` 中也调用 `say_hello()`,你可以这样做: ### `src/utils/utils.c` ```c #include <stdio.h> #include "utils/utils.h" #include "../main.h" // 引入 main.h,以便调用 say_hello() void utils_function() { printf("Utils function called.\n"); say_hello(); // ← 其他模块调用 main.c 中的函数 } ``` 这样 `utils_function()` 就可以在执行时调用 `say_hello()`。 --- ## ✅ 总结:`say_hello()` 的使用位置 | 文件 | 使用情况 | |------|----------| | `main.c` 中的 `main()` 函数 | ✅ 被调用 | | `utils.c` / `data.c` 等模块 | ✅ 如果它们包含了 `main.h` 并调用了该函数 | | `main.h` | 声明了该函数(不是调用) | --- ##
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值