当前位置:网站首页>C job interview - casting and comparing - C job interview - casting and comparing
C job interview - casting and comparing - C job interview - casting and comparing
2022-07-05 06:18:00 【Technology feast】
problem :
I was confronted with a tricky (IMO) question. I encountered a difficult problem (IMO) problem .I needed to compare two MAC addresses , in the most efficient manner. I need to compare the two in the most effective way MAC Address .
The only thought that crossed my mind in that moment was the trivial solution - a for
loop, and comparing locations, and so I did, but the interviewer was aiming to casting. At that moment , The only thing I can think of is a trivial solution —— One for
loop , Compare positions , So I did , But the interviewer's goal is to cast .
The MAC definition:MAC Definition :
typedef struct macA { char data[6];} MAC;
And the function is (the one I was asked to implement): The function is ( What I was asked to do ):
int isEqual(MAC* addr1, MAC* addr2){ int i; for(i = 0; i<6; i++) { if(addr1->data[i] != addr2->data[i]) return 0; } return 1;}
But as mentioned, he was aiming for casting. But as mentioned before , His goal is to cast .
Meaning, to somehow cast the MAC address given to an int, compare both of the addresses, and return. intend , In some way, the given MAC Address conversion to int, Compare two addresses , Then return .
But when casting, int int_addr1 = (int)addr1;
But when converting , int int_addr1 = (int)addr1;
, only four bytes will be casted, right?, Only four bytes will be projected , Am I right? ?Should I check the remaining ones? Should I check the rest ?Meaning locations 4 and 5? It means location 4 and 5?
Both char
and int
are integer types so casting is legal, but what happens in the described situation?char
and int
They're all integer types , Therefore, coercion is legal , But what happens in the described situation ?
Solution :
Reference resources : https://stackoom.com/en/question/1PWLU边栏推荐
- Leetcode-9: palindromes
- 1041 Be Unique
- Appium automation test foundation - Summary of appium test environment construction
- Groupbykey() and reducebykey() and combinebykey() in spark
- 打印机脱机时一种容易被忽略的原因
- [rust notes] 16 input and output (Part 1)
- leetcode-31:下一个排列
- __ builtin_ Popcount() counts the number of 1s, which are commonly used in bit operations
- 927. Trisection simulation
- Leetcode array operation
猜你喜欢
1.14 - assembly line
Arduino 控制的 RGB LED 无限镜
MySQL advanced part 2: storage engine
Sqlmap tutorial (II) practical skills I
1.15 - input and output system
Single chip computer engineering experience - layered idea
RGB LED infinite mirror controlled by Arduino
Redis publish subscribe command line implementation
1.13 - RISC/CISC
MySQL advanced part 2: the use of indexes
随机推荐
LeetCode 0107. Sequence traversal of binary tree II - another method
做 SQL 性能优化真是让人干瞪眼
How to understand the definition of sequence limit?
Liunx starts redis
1039 Course List for Student
SPI details
leetcode-22:括号生成
Spark中groupByKey() 和 reduceByKey() 和combineByKey()
Network security skills competition in Secondary Vocational Schools -- a tutorial article on middleware penetration testing in Guangxi regional competition
Real time clock (RTC)
Niu Mei's math problems
快速使用Amazon MemoryDB并构建你专属的Redis内存数据库
[rust notes] 16 input and output (Part 1)
Leetcode-6111: spiral matrix IV
1039 Course List for Student
Daily question 1189 Maximum number of "balloons"
MySQL advanced part 1: View
Quickly use Amazon memorydb and build your own redis memory database
阿里新成员「瓴羊」正式亮相,由阿里副总裁朋新宇带队,集结多个核心部门技术团队
LVS简介【暂未完成(半成品)】