编写清空PassWord_Temp数组的函数
时间: 2024-02-16 13:03:47 浏览: 19
好的,下面是清空PassWord_Temp数组的函数示例代码:
```c
void ClearPassWord_Temp(char PassWord_Temp[], int length) {
int i;
for (i = 0; i < length; i++) {
PassWord_Temp[i] = '\0'; // 将数组每个元素都赋值为空字符
}
}
```
这个函数接收两个参数,第一个是需要清空的数组名,第二个是数组的长度。函数会遍历整个数组,将每个元素都赋值为空字符,从而实现清空数组的效果。
相关问题
怎样清空一个std::priority_queue数组
可以通过将一个空的priority_queue赋值给数组中的每个元素来清空std::priority_queue数组。例如,假设我们有一个std::priority_queue<int>类型的数组pq_arr,可以使用以下代码将其清空:
```c++
std::priority_queue<int> empty_pq;
for (int i = 0; i < arr_size; i++) {
pq_arr[i] = empty_pq;
}
```
修改代码中的错误#include "oled.h" #include "oledfont.h" #include "matrix_key.h" #define PassWord_MAX_Num 8 void password_correct() { OLED_ShowCHinese(16,2,20,1); OLED_ShowCHinese(32,2,21,1); OLED_ShowCHinese(48,2,24,1); OLED_ShowCHinese(64,2,25,1); } void password_Error() { OLED_ShowCHinese(16,2,20,1); OLED_ShowCHinese(32,2,21,1); OLED_ShowCHinese(48,2,22,1); OLED_ShowCHinese(64,2,23,1); } void password_input() { OLED_ShowCHinese(0,0,17,0); OLED_ShowCHinese(16,0,18,0); OLED_ShowCHinese(32,0,19,0); OLED_ShowCHinese(48,0,20,0); OLED_ShowCHinese(64,0,21,0); } uint8_t flag=1; void oled_xs(){ if(flag==1){ password_input(); } if(flag==2){ password_correct(); } if(flag==3){ password_Error(); } } void oled_skip(uint8_t num) { OLED_Clear(); flag = num; } uint8_t PassWord[PassWord_MAX_Num+1] = "123456\0"; uint8_t PassWord_Temp[PassWord_MAX_Num +1]; uint8_t password_verifiers(){ uint8_t n =0; for(n =0;n<PassWord_MAX_Num;n++) { if(PassWord_Temp[n]!=PassWord[n]) return 0; } return 1; } void key_command(){ uint8_t key_num = 0; uint8_t text =0; key_num = matrix_key(); if(flag==1){ if(PassWord_n<PassWord_MAX_Num) { switch(key_num) { case 1 :text ='1';break; case 2 :text ='2';break; case 3 :text ='3';break; case 4 :text ='4';break; case 5 :text ='5';break; case 6 :text ='6';break; case 7 :text ='7';break; case 8 :text ='8';break; case 9 :text ='9';break; case 10 :text ='10';break; case 11 :text ='11';break; case 12 :text ='12';break; case 13 :text ='13';break; case 14 :text ='14';break; default: break; } if(text) { PassWord_Temp[PassWord_n] = text; PassWord_n++; } } if (key_num ==15) { PassWord_Temp[PassWord_n] ='\0'; PassWord_n++; if(password_verifiers()==1) { oled_skip(2); LED2_ON(); } else { oled_skip(3); } } if(key_num ==13) { Clear_PassWord_Temp(); } } }
在代码中,有一个错误是在函数`password_verifiers()`的第7行,`!=`应该改为`!=`。正确的代码如下:
```c
uint8_t password_verifiers(){
uint8_t n =0;
for(n =0;n<PassWord_MAX_Num;n++)
{
if(PassWord_Temp[n]!=PassWord[n])
return 0;
}
return 1;
}
```
另外,在函数`key_command()`中,有两个问题需要注意:
1. `PassWord_n`没有声明。假设它是全局变量,否则需要在函数内部定义。
2. `Clear_PassWord_Temp()`函数没有在代码中出现,需要确认它是否存在。如果不存在,需要自己编写清空`PassWord_Temp`数组的函数。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)