天天看點

字元指針講解(有面試題)

字元指針

在指針的類型中我們知道有一種指針類型為字元指針char*

一般是這樣使用的:

int main()
{
	char ch = 'w';
	char* pc = &ch;
	*pc = 'w';
	system("pause");
	return 0;
}
           

還有一種使用方式如下:

int main()
{
	char* pstr = "hello bit";//把字元串放到pstr指針變量裡
	printf("%s\n", pstr);
	system("pause");
	return 0;
}
           

代碼 char pstr = “hello bit.”; 特别容易讓同學以為是把字元串 hello bit 放到字元指針 pstr 裡了,但 是/本質是把字元串 hello bit. 首字元的位址放到了pstr中。

#include<stdio.h>
#include<stdlib.h>

int main()
{
	char str1[] = "hello bit.";
	char str2[] = "hello bit.";
	char* str3 = "hello bit.";
	char* str4 = "hello bit.";

	if (str1 == str2)
		printf("str1 and str2 are same\n");
	else
		printf("str1 and str2 are not same\n");

	if (str3 == str4)
		printf("str3 and str4 are same\n");
	else
		printf("str3 and str4 are not same\n");

	system("pause");
	return 0;
}