09 03 指针作为函数返回值
02 整数数组 字符数组 字符串
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void print(int* a, int len)
{
for (int i = 0; i < len; i++)
{
printf("%d ", a[i]);
}
}
void print2(char* a2,int len)
{
for (int i = 0; i < len; i++)
{
printf("%c ", a2[i]);
}
}
void print3(char* a3)
{
int i = 0;
while(a3[i]!='\0')
{
printf("%c ", a3[i]);
i++;
}
}
void main()
{
int a[] = { 1,2,3,4,5,6,7,8,9,10 };
print(a, sizeof(a) / sizeof(a[0]));
print(&a[0], sizeof(a) / sizeof(a[0]));
char a2[] = { 'h','e','l','l','o' };
print2(a2, sizeof(a2) / sizeof(a2[0]));
print2(&a2[0], sizeof(a2) / sizeof(a2[0]));
char* a3 = "hello";
print3(a3);
print3(&a3[0]);
system("pause");
}
02 字符数组在栈区;字符串常量在常量区
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char* test()
{
char a[] = "hello world";
return a;
}
char* test2()
{
char* a = "hello world";
return a;
}
void main()
{
char* pb = test();
printf("%s\n", pb);
char* pb2 = test2();
printf("%s\n", pb2);
system("pause");
}