我在mbed微控制器K64F(1MB闪存,512KB RAM)上运行网络服务器。我通过get form获取数据。我必须创建一个ipaddresses列表,所以我创建了一个2D char数组,我将数据保存到它中。我将两个char数组声明为char bits[3][17]
和char ipadd[3][17]
。
我正在使用memcpy函数将get表单中的数据复制到这些数组中。
memcpy(ipaddr[counter],ip,strlen(ip))
memcpy(bits[counter],b,strlen(b))
所以每当用户通过get表单输入数据时,它首先转到char * ip和char * b,然后我将它们复制到2D数组以创建列表。
我遇到的问题是,如果我将数组大小从char bits[3][17]
增加到char bits[4][17]
,应用程序就会崩溃。我检查了我的构建细节,它使用57 KB的ram和74KB的闪存。甚至在没有输入任何数据的情况下它甚至会崩溃,这意味着即使应用程序没有复制任何数据字符串也是如此。
任何人都可以帮助我吗?