我试图在我的程序中调试空取消引用。该程序从用户提交的Web表单接收数据。似乎问题与空字段有关。当用户提交表单时,最终在char *tabledata
变量中检索表数据。
tabledata
使用以下格式处理表的数据:
"row1column1value/row1column2value/row1column3value|row2column1value/row2column2value/row2column3value|\0"
出于调试目的,使用以下方式打印tabledata
内容:
printf("\n tabledata is = %s \n\n", tabledata);
但是当我提交表格时,如果我将第二行的第一列留空,我将获得此输出:
tabledata is = 11/22/33/44/55/22/33|(null)/1/44/55/88/33/44|
当printf
到达空字符时,如何才能停止打印?如何检查此(null)
值是否真的是\0
空字符?
答案 0 :(得分:0)
%s
以及printf
将不会这样做。
您必须使用puts(tabledata);
希望这能回答你的问题。