time_t now //加 time_t 型
now=time(NULL) // 获取当前时间。
printf("%s",ctime(&now)) // 很容易输出。
加结构成员:
struct student
{ int id
char name[100]
int score
time_t now
}
你是要控制打印的字符个数?printf字符串 是以字符串结束符号‘\0’为界
所以你想指定打印位数,只要在name[40]指定位数后插入‘\0’就好
比如:name【40】里原字符串 "abcdefgh\0"
正常打印是abcdefgh 也就是你的i=8
如果你想只打印3个字符,可以name[3]=0 那么字符串就变成"abc\0efgh\0"
那打印的就只是 "abc"
看你后来又补充了问题
如果你是想要改变数组维度,可以用考虑用字符指针
比如 :
#include<malloc.h>
int main()
{
char *name
name=(char *)malloc(sizeof(char)*i)
return 0
}
这样你就申请了一个i长度的字符串数组内存空间,相当于 name【i】
如果中途要改变维度大小,只要改变i的值,
再 执行
free(name)//释放之前的内存
name=(char *)malloc(sizeof(char)*i)//如果这里没有再次申请内存,释放后建议name=NULL避免野指针
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)