如何修复 C 中的地址边界错误

How do I fix a Address Boundary Error in C

我正在编写一个程序,它接受 2 个命令行参数,每个参数都是指向字符串的指针。我称它们为 str 和 except。如果 str 中有一个小写字母,那么这是一个错误,程序结束。如果 char 在 str 中但不在 except 中,则打印。当我 运行 我的代码:“./a.out” 由信号 SIGSEGV(地址边界错误)

终止时,我收到此错误消息

当您不输入 argv[2] 或 argv[1] 时,将显示 SIGSEGV。 请测试

./a thistest et

并且,你的代码意味着如果有小写字母,它将通过。(你的任务是除非有小写字母)

请修复:if((str[i] < 'A')||(str[i] > 'Z')){