use*_*292 1 c linked-list list operators
我想我已经沉迷于优化,所以我想知道以下代码可以"优化":
假设我有一个C语言链表,在创建新元素时我使用以下代码:
log_event_list_cur->next =
(struct log_event_list *)malloc(sizeof(struct log_event_list));
log_event_list_cur = log_event_list_cur->next;
Run Code Online (Sandbox Code Playgroud)
我想知道以下代码是否可以:
log_event_list_cur =
log_event_list_cur->next =
(struct log_event_list *) malloc(sizeof(struct log_event_list));
Run Code Online (Sandbox Code Playgroud)
要么:
log_event_list_cur->next =
log_event_list_cur=(struct log_event_list *) malloc....
Run Code Online (Sandbox Code Playgroud)
问候!.
是的,第一个很好(正确的代码行为与第一个代码等效),但两者都不是优化.它们将被编译为相同的机器代码.做你觉得最可读的东西.
第二个表现不同,因为log_event_list_cur在next设置之前将其分配给新的列表条目.
| 归档时间: |
|
| 查看次数: |
145 次 |
| 最近记录: |