явно что-то не так 🤔
                  
                  
                  const NAME_BUFFER: &mut str = ["\0"; 256];
                  
                  
                
static он и в расте статик
 AivanF
                          
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          AivanF
                          
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  Окей, но типы всё равно не сходятся :/
static mut NAME_BUFFER: [u8; 256] = [b'0'; 256];
 AivanF
                          
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          AivanF
                          
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  Осознал, спасибо
static mut NAME_BUFFER: [char; 255] = ['0'; 255]; можно еще так, но думаю все-таки способ выше - намного лучше будет намного + не стоит забывать, что любое обращение к static mut - всегда unsafe https://doc.rust-lang.org/stable/std/keyword.static.html#mutable-statics
 AivanF
                          
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          AivanF
                          
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  А можно его потом использовать как &'static str?
 AivanF
                          
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          AivanF
                          
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  А он точно не создаёт новую строку? Судя по отсутствию параметров времени жизни кажется что аргумент и результат получаются независимыми
сишникам всё можно 🙂 https://doc.rust-lang.org/std/str/fn.from_utf8_unchecked.html
str никогда не владеет данными
Стикер
Лайфтаймы всегда есть в функциях с рефами, иногда они просто неявные https://doc.rust-lang.org/beta/reference/lifetime-elision.html
 AivanF
                          
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          AivanF
                          
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  Обсуждают сегодня