strtok字符串拆分
//头文件
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
//主函数
int main()
{
//定义待拆分的字符串
char str[] = "hello.world$llo llo";
//第一次拆分 如果没有可拆分的字符串返回NULL
char *p = strtok(str, ".$ ");
//while循环拆分
while (p != NULL)
{
//打印拆分出来的字符串
printf("%s\n", p);
//持续拆分
p = strtok(NULL, ".$ ");
}
}
堆空间的申请
//头文件
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
//主函数
int main()
{
//申请堆空间 申请失败返回NULL
//(int *)强转为指针 (sizeof(int))数据类型 *10数据个数(空间大小)
int *p = (int *)malloc(sizeof(int) * 10);
//判断是否申请成功
if (*p == NULL)
{
printf("申请失败");
return -1;
}
//声明循环因子
int i;
//使用for循环赋值
for (i = 0; i < 10; i++)
{
p[i] = 10 + i;
}
//使用for循环打印(独处malloc空间中的数据)
for (i = 0; i < 10; i++)
{
printf("p=%d\n", *(p + i));
}
//释放内存
free(p);
//p等于空
p = NULL;
//程序暂停
system("pause");
//程序正常退出
return 0;
}