in reply to Problems printing contents of array

The error could also mean that there isn't an array '@s340Strings' in your code.

You may have typo'd the name of the array, or it may be a subset of that... if you wanted to print the array '@s' and then immediately the string literal '340Strings' (which would probably be bad, as it'll likely look like part of the last item in the array), you could do:

print "@{s}340Strings";

If you're just trying to print the literal string '@s340Strings', then either switch to single quotes, so it won't try to do variable expansion on you, or escape the @ with a \, as the error message suggested.