64,644
社区成员
发帖
与我相关
我的任务
分享
char **t;
t[k][a] = ...;
#include <iostream>
#include <string>
#include <stdlib.h>
#include <algorithm>
#include<fstream>
#include <graphics.h> // 绘图库头文件,绘图语句需要
#include <conio.h> // 控制台输入输出头文件,getch()语句需要
int main()
{
initgraph(758, 645);
char time1[50];
int h1, m1, s1;
char **t = NULL;
t = (char **)malloc(sizeof(char *) * 3); /* 3: 时分秒*/
if (!t)
return -1;
for (int i = 0; i < 3; i++) {
t[i] = (char *)malloc(sizeof(char) * 3); /*时分秒字符串,至少是3,因为小时,分钟,秒都是2位数*/
if (!t[i])
return -1;
}
int k=0, a=0, j=0;
InputBox(time1, 50, "请输入上机时间", "欢迎使用");
for(j=0; time1[j] != '\0'; j++){
if(time1[j] != ':'){
t[k][a] = time1[j];
a++;
}
else {
k++;
t[k][a] = '\0';
a=0;
}
}
h1 = atoi(t[0]);
m1 = atoi(t[1]);
s1 = atoi(t[2]);
for (int i = 0; i < 3; i++)
free(t[i]);
free(t);
return 0;
}
野指针导致的程序崩溃;
t需要事先申请空间;
参考一下;
另外,你的帖子还没通过审核,我都给回复了。CSDN会不会找我的麻烦