提示外部代码是什么情况呀?

img


提示外部代码是什么情况呀?之前写的都好好的,下午突然就这样了

代码打了断点,进入调试模式了,圈出来的位置鼠标左键再点一次下去掉断点,或者按f5继续运行

img

  • 这个问题的回答你可以参考下: https://ask.csdn.net/questions/7714571
  • 你也可以参考下这篇文章:简易方式:自己写出来有价值的代码应用想出售使用权,但不想透露源代码如何做到?
  • 除此之外, 这篇博客: 常用数据结构与经典算法 简单讲解与示例代码中的 线性表示例代码 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 代码(C语言)
    链式线性表 Visual Studio 2019

    /**
     * 数据结构 C语言链式线性表
     * @FileName									SingleLinkList.c
     * @author										W.Lionel.Esaka
     */
    
    #include <stdio.h>
    #include <stdlib.h>
    
    typedef int DataType;
    #define Status int;
    #define CORRECT 1;
    #define ERROR 0;
    #define OVERFLOW -1;
    
    /*单链表的类型定义如下*/
    typedef struct node{
    	DataType data;
    	struct node* next;
    } LinkNode, * LinkList;
    
    /*创建指定长度单链表  尾插法*/
    void CreateListTail(LinkList* list, int Number) 
    {
    	LinkList node, r;
    	int i;
    	srand(time(0));
    	*list = (LinkList*)malloc(sizeof(LinkList));
    	r = *list;
    	for (i = 0; i < Number; i++)
    	{
    		node = (LinkNode*)malloc(sizeof(LinkNode));
    		node->data = rand() % 100 + 1;
    		r->next = node;
    		r = node;
    	}
    	r->next = NULL;
    }
    
    /* 插入元素 */
    Status InsertLinkList(LinkList* list, int position, DataType value)
    {
    	int i = 1;
    	LinkList p, s;
    	p = *list;
    	while (p && i < position)
    	{
    		p = p->next;
    		i++;
    	}
    	if ( !p || i > position)
    	{
    		return ERROR;
    	}
    	s = (LinkList)malloc(sizeof(LinkNode));
    	s->data = value;
    
    	s->next = p->next;
    	p->next = s;
    
    	return CORRECT;
    }
    
    /*删除元素 */
    Status DeleteLinkList(LinkList* list, int position, DataType* value)
    {
    	int i = 1;
    	LinkList p, q;
    	p = *list;
    
    	while (p->next && i < position)
    	{
    		p = p->next;
    		i++;
    	}
    	if (!(p->next) || i > position)
    	{
    		return ERROR;
    	}
    
    	q = p->next;
    	p->next = q->next;
    
    	*value = q->data;
    	free(q);
    
    	return CORRECT;
    }
    
    /*打印链表数据*/
    void DisPlayList(LinkList* list)
    {
    	LinkList p;
    	p = *list;
    	int i = 0;
    	printf("\n链表数据如下:\n");
    	while (p->next != NULL)
    	{
    		p = p->next;
    		printf("%d,\t", p->data);
    		i++;
    		if (i%10 == 0) printf("\n");
    	}
    	printf("\n链表长度为%d\n", i);
    }
    /*
    	将一个带头结点的单链表 A 分解为两个具有相同结构的链表 B 和C。
    	其中 B 表中的结点为 A 表中值为奇数的结点,而 C 表中的结点为 A 表中值为偶数的结点。
    */
    void func(LinkList* A, LinkList* B, LinkList* C)
    {
    	LinkList p1;
    	p1 = *A;
    	while (p1->next != NULL)
    	{
    		p1 = p1->next;
    		if ( odd(p1->data) )
    		{
    			InsertLinkList(B, 1, p1->data);
    		}
    		else
    		{
    			InsertLinkList(C, 1, p1->data);
    		}
    	}
    }
    
    /*清空链表*/
    Status ClearList(LinkList* list)
    {
    	LinkList p, q;
    	p = (*list)->next;
    	while (p)
    	{
    		q = p->next;
    		free(p);
    		p = q;
    	}
    	(*list)->next = NULL;
    	return CORRECT;
    }
    
    /*odd(x) 为判奇数函数,x 为奇数,返回 1,否则返回 0。*/
    int odd(int x)
    {
    	if (x & 1)
    	{
    		return 1;
    	}
    	else
    	{
    		return 0;
    	}
    }
    
    /*入口 演示main*/
    void main()
    {
    	LinkList linklistA, linklistB, linklistC;
    	LinkList* listA = &linklistA;
    	LinkList* listB = &linklistB;
    	LinkList* listC = &linklistC;
    	int value = 0;
    	
    	CreateListTail(listA, 20);
    	printf("单链表LinkListA");
    	DisPlayList(listA);
    
    	printf("\n将一个带头结点的单链表 A 分解为两个具有相同结构的链表 B 和 C \n");
    	printf("其中 B 表中的结点为 A 表中值为奇数的结点,而 C 表中的结点为 A 表中值为偶数的结点\n");
    	CreateListTail(listB, 0);
    	CreateListTail(listC, 0);
    
    	func(listA,listB,listC);
    
    	printf("单链表LinkListB");
    	DisPlayList(listB);
    	printf("\n");
    	printf("单链表LinkListC");
    	DisPlayList(listC);
    }
    
  • 您还可以看一下 钱兴会老师的从零开始自然语言处理课程中的 预测部分代码小节, 巩固相关知识点