Ошибка компиляции GCC: объявление ‘strlen’ должно быть доступным

Я обычно использую keys и я не могу думать в прошлый раз, когда я использовал, или считайте использование each.

Не забывайте о map, В зависимости от того, что Вы делаете в цикле!

map { print "$_ => $hash{$_}\n" } keys %hash;
5
задан MSalters 27 October 2009 в 09:13
поделиться

4 ответа

Вам, вероятно, просто нужно включить заголовок, который содержит функции библиотеки strcpy и strlen.

#include <string.h>

или (предпочтительно для C ++)

#include <cstring>
10
ответ дан 18 December 2019 в 09:08
поделиться

В C ++ функция strlen () является частью строковой библиотеки, и похоже, что заголовочный файл не был включен.

Включен ли он где-нибудь?

include <string.h>

Если нет, то попробуйте добавить его и посмотрите, решит ли это проблему.

4
ответ дан 18 December 2019 в 09:08
поделиться

В коде есть ошибки. Вероятно, вам не хватает #include .

Если вы не хотите изменять код, добавьте -fpermissive в параметры компилятора. (См. документацию GCC .)

3
ответ дан 18 December 2019 в 09:08
поделиться

должно быть доступно объявление 'strlen'

Включить string.h или (C ++) для объявления strlen () .

1
ответ дан 18 December 2019 в 09:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: