将字符串以不同的进制打印

在很多时候,我们需要将结果以不同的形式打印出来,这里我们记录一下相关的操作。

1. 以十六进制输出

代码:

#include <stdio.h>
#include <string.h>

void print_hex(char *buffer, int len){
	int i;
	printf("******************start code**********************************\n");
	for(i = 1; i <= len; i++){
		printf("0x%02X ",buffer[i-1]);					
		if(i % 16 == 0){
			printf("\n");
		}
	}
	printf("\n");
	printf("********************end code************************************\n");
}
 
int main(){
	char buffer[128] = "fdakfjakfjalskfj2343215412512543125123513143klj43l12k4j1l2k3412lk4j12lk4j3132";
	print_hex(buffer, strlen(buffer));	
}

结果:

 

这样,我们可以查看数据在内存中的形态是什么样的?比如:可以查看,int 在内存中的布局?结构体的布局。

posted @ 2023-04-25 19:52  皓然123  阅读(21)  评论(0)    收藏  举报